public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-02-16 22:43 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2008-02-16 22:43 UTC (permalink / raw
  To: gentoo-commits

vapier      08/02/16 22:43:04

  Modified:             flag-o-matic.eclass
  Log:
  add eclass documentation #210394 by mren

Revision  Changes    Path
1.121                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.121&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.121&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.120&r2=1.121

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.120
retrieving revision 1.121
diff -u -r1.120 -r1.121
--- flag-o-matic.eclass	22 Jul 2007 08:21:09 -0000	1.120
+++ flag-o-matic.eclass	16 Feb 2008 22:43:04 -0000	1.121
@@ -1,67 +1,17 @@
-# Copyright 1999-2007 Gentoo Foundation
+# Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.120 2007/07/22 08:21:09 dberkholz Exp $
-#
-# Maintainer: toolchain@gentoo.org
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.121 2008/02/16 22:43:04 vapier Exp $
+
+# @ECLASS: flag-o-matic.eclass
+# @MAINTAINER:
+# toolchain@gentoo.org
+# @BLURB: common functions to manipulate and query toolchain flags
+# @DESCRIPTION:
+# This eclass contains a suite of functions to help developers sanely
+# and safely manage toolchain flags in their builds.
 
-# need access to emktemp()
 inherit eutils toolchain-funcs multilib
 
-#
-#### filter-flags <flags> ####
-# Remove particular flags from C[XX]FLAGS
-# Matches only complete flags
-#
-#### append-flags <flags> ####
-# Add extra flags to your current C[XX]FLAGS
-#
-#### replace-flags <orig.flag> <new.flag> ###
-# Replace a flag by another one
-#
-#### replace-cpu-flags <old.cpus> <new.cpu> ###
-# Replace march/mcpu flags that specify <old.cpus>
-# with flags that specify <new.cpu>
-#
-#### is-flag[q] <flag> ####
-# Returns "true" if flag is set in C[XX]FLAGS
-# Matches only complete a flag
-# q version sets return code but doesn't echo
-#
-#### is-ldflag[q] <flag> ####
-# Returns "true" if flag is set in LDFLAGS
-# Matches only complete a flag
-# q version sets return code but doesn't echo
-#
-#### strip-flags ####
-# Strip C[XX]FLAGS of everything except known
-# good options.
-#
-#### strip-unsupported-flags ####
-# Strip C[XX]FLAGS of any flags not supported by
-# installed version of gcc
-#
-#### get-flag <flag> ####
-# Find and echo the value for a particular flag
-#
-#### replace-sparc64-flags ####
-# Sets mcpu to v8 and uses the original value
-# as mtune if none specified.
-#
-#### filter-mfpmath <math types> ####
-# Remove specified math types from the fpmath specification
-# If the user has -mfpmath=sse,386, running `filter-mfpmath sse`
-# will leave the user with -mfpmath=386
-#
-#### append-ldflags ####
-# Add extra flags to your current LDFLAGS
-#
-#### filter-ldflags <flags> ####
-# Remove particular flags from LDFLAGS
-# Matches only complete flags
-#
-#### bindnow-flags ####
-# Returns the flags to enable "now" binding in the current selected linker.
-#
 ################ DEPRECATED functions ################
 # The following are still present to avoid breaking existing
 # code more than necessary; however they are deprecated. Please
@@ -69,27 +19,12 @@
 # need to know which hardened techs are active in the compiler.
 # See bug #100974
 #
-#### has_hardened ####
-# Returns true if the compiler has 'Hardened' in its version string,
-# (note; switched-spec vanilla compilers satisfy this condition) or
-# the specs file name contains 'hardened'.
-#
-#### has_pie ####
-# Returns true if the compiler by default or with current CFLAGS
-# builds position-independent code.
-#
-#### has_pic ####
-# Returns true if the compiler by default or with current CFLAGS
-# builds position-independent code.
-#
-#### has_ssp_all ####
-# Returns true if the compiler by default or with current CFLAGS
-# generates stack smash protections for all functions
-#
-#### has_ssp ####
-# Returns true if the compiler by default or with current CFLAGS
-# generates stack smash protections for most vulnerable functions
-#
+# has_hardened
+# has_pie
+# has_pic
+# has_ssp_all
+# has_ssp
+
 
 # C[XX]FLAGS that we allow in strip-flags
 # Note: shell globs and character lists are allowed
@@ -166,6 +101,10 @@
 	eval export ${VAR}=\${new\[*]}
 }
 
+# @FUNCTION: filter-flags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Remove particular <flags> from {C,CPP,CXX}FLAGS.  Accepts shell globs.
 filter-flags() {
 	_filter-hardened "$@"
 	_filter-var CFLAGS "$@"
@@ -174,22 +113,36 @@
 	return 0
 }
 
+# @FUNCTION: filter-lfs-flags
+# @DESCRIPTION:
+# Remove flags that enable Large File Support.
 filter-lfs-flags() {
 	[[ -n $@ ]] && die "filter-lfs-flags takes no arguments"
 	filter-flags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 }
 
+# @FUNCTION: append-cppflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to the current CPPFLAGS.
 append-cppflags() {
 	[[ -z $* ]] && return 0
 	export CPPFLAGS="${CPPFLAGS} $*"
 	return 0
 }
 
+# @FUNCTION: append-lfs-flags
+# @DESCRIPTION:
+# Add flags that enable Large File Support.
 append-lfs-flags() {
 	[[ -n $@ ]] && die "append-lfs-flags takes no arguments"
 	append-cppflags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 }
 
+# @FUNCTION: append-flags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to your current C[XX]FLAGS.
 append-flags() {
 	[[ -z $* ]] && return 0
 	export CFLAGS="${CFLAGS} $*"
@@ -197,6 +150,10 @@
 	return 0
 }
 
+# @FUNCTION: replace-flags
+# @USAGE: <old> <new>
+# @DESCRIPTION:
+# Replace the <old> flag with <new>.  Accepts shell globs for <old>.
 replace-flags() {
 	[[ $# != 2 ]] \
 		&& echo && eerror "Usage: replace-flags <old flag> <new flag>" \
@@ -221,6 +178,11 @@
 	return 0
 }
 
+# @FUNCTION: replace-cpu-flags
+# @USAGE: <old> <new>
+# @DESCRIPTION:
+# Replace cpu flags (like -march/-mcpu/-mtune) that select the <old> cpu
+# with flags that select the <new> cpu.  Accepts shell globs for <old>.
 replace-cpu-flags() {
 	local newcpu="$#" ; newcpu="${!newcpu}"
 	while [ $# -gt 1 ] ; do
@@ -242,24 +204,46 @@
 	return 1
 }
 
+# @FUNCTION: is-flagq
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is in C[XX]FLAGS, else returns shell false.  Accepts shell globs.
 is-flagq() {
 	[[ -n $2 ]] && die "Usage: is-flag <flag>"
 	_is_flagq CFLAGS $1 || _is_flagq CXXFLAGS $1
 }
 
+# @FUNCTION: is-flag
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Echo's "true" if flag is set in C[XX]FLAGS.  Accepts shell globs.
 is-flag() {
 	is-flagq "$@" && echo true
 }
 
+# @FUNCTION: is-ldflagq
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is in LDFLAGS, else returns shell false.  Accepts shell globs.
 is-ldflagq() {
 	[[ -n $2 ]] && die "Usage: is-ldflag <flag>"
 	_is_flagq LDFLAGS $1
 }
 
+# @FUNCTION: is-ldflag
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Echo's "true" if flag is set in LDFLAGS.  Accepts shell globs.
 is-ldflag() {
 	is-ldflagq "$@" && echo true
 }
 
+# @FUNCTION: filter-mfpmath
+# @USAGE: <math types>
+# @DESCRIPTION:
+# Remove specified math types from the fpmath flag.  For example, if the user
+# has -mfpmath=sse,386, running `filter-mfpmath sse` will leave the user with
+# -mfpmath=386.
 filter-mfpmath() {
 	local orig_mfpmath new_math prune_math
 
@@ -288,6 +272,9 @@
 	return 0
 }
 
+# @FUNCTION: strip-flags
+# @DESCRIPTION:
+# Strip C[XX]FLAGS of everything except known good/safe flags.
 strip-flags() {
 	local x y flag NEW_CFLAGS NEW_CXXFLAGS
 
@@ -350,10 +337,16 @@
 		> /dev/null 2>&1
 }
 
-# Returns true if C compiler support given flag
+# @FUNCTION: test-flag-CC
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is supported by the C compiler, else returns shell false.
 test-flag-CC() { test-flag-PROG "CC" "$1"; }
 
-# Returns true if C++ compiler support given flag
+# @FUNCTION: test-flag-CXX
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is supported by the C++ compiler, else returns shell false.
 test-flag-CXX() { test-flag-PROG "CXX" "$1"; }
 
 test-flags-PROG() {
@@ -376,23 +369,39 @@
 	[[ -n ${flags} ]]
 }
 
-# Returns (echo's) the given flags supported by the C compiler
+# @FUNCTION: test-flags-CC
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Returns shell true if <flags> are supported by the C compiler, else returns shell false.
 test-flags-CC() { test-flags-PROG "CC" "$@"; }
 
-# Returns (echo's) the given flags supported by the C++ compiler
+# @FUNCTION: test-flags-CXX
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Returns shell true if <flags> are supported by the C++ compiler, else returns shell false.
 test-flags-CXX() { test-flags-PROG "CXX" "$@"; }
 
+# @FUNCTION: test-flags
+# @USAGE: <flags>
+# @DESCRIPTION:
 # Short-hand that should hopefully work for both C and C++ compiler, but
 # its really only present due to the append-flags() abomination.
 test-flags() { test-flags-CC "$@"; }
 
-# Depriciated, use test-flags()
+# @FUNCTION: test_flag
+# @DESCRIPTION:
+# DEPRICIATED, use test-flags()
 test_flag() {
 	ewarn "test_flag: deprecated, please use test-flags()!" >&2
 
 	test-flags-CC "$@"
 }
 
+# @FUNCTION: test_version_info
+# @USAGE: <version>
+# @DESCRIPTION:
+# Returns shell true if the current C compiler version matches <version>, else returns shell false.
+# Accepts shell globs.
 test_version_info() {
 	if [[ $($(tc-getCC) --version 2>&1) == *$1* ]]; then
 		return 0
@@ -401,11 +410,18 @@
 	fi
 }
 
+# @FUNCTION: strip-unsupported-flags
+# @DESCRIPTION:
+# Strip C[XX]FLAGS of any flags not supported by the active toolchain.
 strip-unsupported-flags() {
 	export CFLAGS=$(test-flags-CC ${CFLAGS})
 	export CXXFLAGS=$(test-flags-CXX ${CXXFLAGS})
 }
 
+# @FUNCTION: get-flag
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Find and echo the value for a particular flag.  Accepts shell globs.
 get-flag() {
 	local f findflag="$1"
 
@@ -423,6 +439,8 @@
 	return 1
 }
 
+# @FUNCTION: has_hardened
+# @DESCRIPTION:
 # DEPRECATED - use gcc-specs-relro or gcc-specs-now from toolchain-funcs
 has_hardened() {
 	ewarn "has_hardened: deprecated, please use gcc-specs-{relro,now}()!" >&2
@@ -432,6 +450,8 @@
 	[[ -f ${GCC_SPECS} && ${GCC_SPECS} != ${GCC_SPECS/hardened/} ]]
 }
 
+# @FUNCTION: has_pic
+# @DESCRIPTION:
 # DEPRECATED - use gcc-specs-pie from toolchain-funcs
 # indicate whether PIC is set
 has_pic() {
@@ -442,6 +462,8 @@
 	gcc-specs-pie
 }
 
+# @FUNCTION: has_pie
+# @DESCRIPTION:
 # DEPRECATED - use gcc-specs-pie from toolchain-funcs
 # indicate whether PIE is set
 has_pie() {
@@ -452,6 +474,8 @@
 	gcc-specs-pie
 }
 
+# @FUNCTION: has_ssp_all
+# @DESCRIPTION:
 # DEPRECATED - use gcc-specs-ssp from toolchain-funcs
 # indicate whether code for SSP is being generated for all functions
 has_ssp_all() {
@@ -463,6 +487,8 @@
 	gcc-specs-ssp-all
 }
 
+# @FUNCTION: has_ssp
+# @DESCRIPTION:
 # DEPRECATED - use gcc-specs-ssp from toolchain-funcs
 # indicate whether code for SSP is being generated
 has_ssp() {
@@ -474,6 +500,11 @@
 	gcc-specs-ssp
 }
 
+# @FUNCTION: has_m64
+# @DESCRIPTION:
+# This doesn't test if the flag is accepted, it tests if the flag actually
+# WORKS. Non-multilib gcc will take both -m32 and -m64. If the flag works
+# return code is 0, else the return code is 1.
 has_m64() {
 	# this doesnt test if the flag is accepted, it tests if the flag
 	# actually -WORKS-. non-multilib gcc will take both -m32 and -m64!
@@ -490,6 +521,11 @@
 	return 1
 }
 
+# @FUNCTION: has_m32
+# @DESCRIPTION:
+# This doesn't test if the flag is accepted, it tests if the flag actually
+# WORKS. Non-mulilib gcc will take both -m32 and -64. If the flag works return
+# code is 0, else return code is 1.
 has_m32() {
 	# this doesnt test if the flag is accepted, it tests if the flag
 	# actually -WORKS-. non-multilib gcc will take both -m32 and -m64!
@@ -508,6 +544,9 @@
 	return 1
 }
 
+# @FUNCTION: replace-sparc64-flags
+# @DESCRIPTION:
+# Sets mcpu to v8 and uses the original value as mtune if none specified.
 replace-sparc64-flags() {
 	local SPARC64_CPUS="ultrasparc3 ultrasparc v9"
 
@@ -534,19 +573,28 @@
 	export CFLAGS CXXFLAGS
 }
 
+# @FUNCTION: append-ldflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to the current LDFLAGS.
 append-ldflags() {
 	[[ -z $* ]] && return 0
 	export LDFLAGS="${LDFLAGS} $*"
 	return 0
 }
 
-# Remove flags from LDFLAGS - it's up to the ebuild to filter
-# CFLAGS and CXXFLAGS via filter-flags if they need to.
+# @FUNCTION: filter-ldflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Remove particular <flags> from LDFLAGS.  Accepts shell globs.
 filter-ldflags() {
 	_filter-var LDFLAGS "$@"
 	return 0
 }
 
+# @FUNCTION: raw-ldflags
+# @USAGE: <flags>
+# @DESCRIPTION:
 # Turn C style ldflags (-Wl,-foo) into straight ldflags - the results
 # are suitable for passing directly to 'ld'; note LDFLAGS is usually passed
 # to gcc where it needs the '-Wl,'.
@@ -561,8 +609,13 @@
 	echo "$@"
 }
 
-# Gets the flags needed for "NOW" binding
+# @FUNCTION: bindnow-flags
+# @RETURN: Returns the flags to enable "now" binding in the current selected linker.
+# @DESCRIPTION:
+# DEPRECATED - Gets the flags needed for "NOW" binding
 bindnow-flags() {
+	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
+
 	case $($(tc-getLD) -v 2>&1 </dev/null) in
 	*GNU* | *'with BFD'*) # GNU ld
 		echo "-Wl,-z,now" ;;



-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-02-18 18:20 Sven Wegener (swegener)
  0 siblings, 0 replies; 64+ messages in thread
From: Sven Wegener (swegener) @ 2008-02-18 18:20 UTC (permalink / raw
  To: gentoo-commits

swegener    08/02/18 18:20:47

  Modified:             flag-o-matic.eclass
  Log:
  redirect the ewarn message to stderr

Revision  Changes    Path
1.122                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.122&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.122&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.121&r2=1.122

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.121
retrieving revision 1.122
diff -u -r1.121 -r1.122
--- flag-o-matic.eclass	16 Feb 2008 22:43:04 -0000	1.121
+++ flag-o-matic.eclass	18 Feb 2008 18:20:47 -0000	1.122
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.121 2008/02/16 22:43:04 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.122 2008/02/18 18:20:47 swegener Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -614,7 +614,7 @@
 # @DESCRIPTION:
 # DEPRECATED - Gets the flags needed for "NOW" binding
 bindnow-flags() {
-	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
+	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild" >&2
 
 	case $($(tc-getLD) -v 2>&1 </dev/null) in
 	*GNU* | *'with BFD'*) # GNU ld



-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-06-07 16:42 Diego Petteno (flameeyes)
  0 siblings, 0 replies; 64+ messages in thread
From: Diego Petteno (flameeyes) @ 2008-06-07 16:42 UTC (permalink / raw
  To: gentoo-commits

flameeyes    08/06/07 16:42:32

  Modified:             flag-o-matic.eclass
  Log:
  Warn when using append-ldflags to pass libraries to link to.
  
  Libraries shouldn't be passed as LDFLAGS, the flags should be passed
  before the object files to link, while libraries should be passed
  after. Passing libraries through LDFLAGS is one of the causes of
  --as-needed failures.

Revision  Changes    Path
1.123                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.123&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.123&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.122&r2=1.123

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -r1.122 -r1.123
--- flag-o-matic.eclass	18 Feb 2008 18:20:47 -0000	1.122
+++ flag-o-matic.eclass	7 Jun 2008 16:42:32 -0000	1.123
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.122 2008/02/18 18:20:47 swegener Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.123 2008/06/07 16:42:32 flameeyes Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -579,6 +579,12 @@
 # Add extra <flags> to the current LDFLAGS.
 append-ldflags() {
 	[[ -z $* ]] && return 0
+	local flag
+	for flag in "$@"; do
+		[[ ${flag} == -l* ]] && \
+			ewarn "Appending a library link instruction (${flag}); libraries to link to should not be passed through LDFLAGS"
+	done
+
 	export LDFLAGS="${LDFLAGS} $*"
 	return 0
 }



-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-07-03  5:30 Donnie Berkholz (dberkholz)
  0 siblings, 0 replies; 64+ messages in thread
From: Donnie Berkholz (dberkholz) @ 2008-07-03  5:30 UTC (permalink / raw
  To: gentoo-commits

dberkholz    08/07/03 05:30:54

  Modified:             flag-o-matic.eclass
  Log:
  [Fortran] Add Fortran support to filter-flags(), append-flags(), is-flagq(), strip-flags(), strip-unsupported-flags(), get-flag(). Add new functions parallel to existing ones for Fortran: append-fflags(), test-flag-F77(), test-flags-FC().

Revision  Changes    Path
1.124                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.124&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.124&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.123&r2=1.124

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.123
retrieving revision 1.124
diff -u -r1.123 -r1.124
--- flag-o-matic.eclass	7 Jun 2008 16:42:32 -0000	1.123
+++ flag-o-matic.eclass	3 Jul 2008 05:30:54 -0000	1.124
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.123 2008/06/07 16:42:32 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.124 2008/07/03 05:30:54 dberkholz Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -26,7 +26,7 @@
 # has_ssp
 
 
-# C[XX]FLAGS that we allow in strip-flags
+# {C,CXX,F,FC}FLAGS that we allow in strip-flags
 # Note: shell globs and character lists are allowed
 setup-allowed-flags() {
 	if [[ -z ${ALLOWED_FLAGS} ]] ; then
@@ -53,7 +53,7 @@
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
 		-msecure-plt -D*"
 
-	# C[XX]FLAGS that we are think is ok, but needs testing
+	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's
 	export UNSTABLE_FLAGS="-Os -O3 -freorder-blocks"
 	return 0
@@ -104,12 +104,14 @@
 # @FUNCTION: filter-flags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Remove particular <flags> from {C,CPP,CXX}FLAGS.  Accepts shell globs.
+# Remove particular <flags> from {C,CPP,CXX,F,FC}FLAGS.  Accepts shell globs.
 filter-flags() {
 	_filter-hardened "$@"
 	_filter-var CFLAGS "$@"
 	_filter-var CPPFLAGS "$@"
 	_filter-var CXXFLAGS "$@"
+	_filter-var FFLAGS "$@"
+	_filter-var FCFLAGS "$@"
 	return 0
 }
 
@@ -131,6 +133,17 @@
 	return 0
 }
 
+# @FUNCTION: append-fflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to the current {F,FC}FLAGS.
+append-fflags() {
+	[[ -z $* ]] && return 0
+	export FFLAGS="${FFLAGS} $*"
+	export FCFLAGS="${FCFLAGS} $*"
+	return 0
+}
+
 # @FUNCTION: append-lfs-flags
 # @DESCRIPTION:
 # Add flags that enable Large File Support.
@@ -142,11 +155,13 @@
 # @FUNCTION: append-flags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Add extra <flags> to your current C[XX]FLAGS.
+# Add extra <flags> to your current {C,CXX,F,FC}FLAGS.
 append-flags() {
 	[[ -z $* ]] && return 0
 	export CFLAGS="${CFLAGS} $*"
 	export CXXFLAGS="${CXXFLAGS} $*"
+	export FFLAGS="${FFLAGS} $*"
+	export FCFLAGS="${FCFLAGS} $*"
 	return 0
 }
 
@@ -162,7 +177,7 @@
 	local f fset
 	declare -a new_CFLAGS new_CXXFLAGS
 
-	for fset in CFLAGS CXXFLAGS; do
+	for fset in CFLAGS CXXFLAGS FFLAGS FCFLAGS; do
 		# Looping over the flags instead of using a global
 		# substitution ensures that we're working with flag atoms.
 		# Otherwise globs like -O* have the potential to wipe out the
@@ -207,16 +222,16 @@
 # @FUNCTION: is-flagq
 # @USAGE: <flag>
 # @DESCRIPTION:
-# Returns shell true if <flag> is in C[XX]FLAGS, else returns shell false.  Accepts shell globs.
+# Returns shell true if <flag> is in {C,CXX,F,FC}FLAGS, else returns shell false.  Accepts shell globs.
 is-flagq() {
 	[[ -n $2 ]] && die "Usage: is-flag <flag>"
-	_is_flagq CFLAGS $1 || _is_flagq CXXFLAGS $1
+	_is_flagq CFLAGS $1 || _is_flagq CXXFLAGS $1 || _is_flagq FFLAGS $1 || _is_flagq FCFLAGS $1
 }
 
 # @FUNCTION: is-flag
 # @USAGE: <flag>
 # @DESCRIPTION:
-# Echo's "true" if flag is set in C[XX]FLAGS.  Accepts shell globs.
+# Echo's "true" if flag is set in {C,CXX,F,FC}FLAGS.  Accepts shell globs.
 is-flag() {
 	is-flagq "$@" && echo true
 }
@@ -276,12 +291,14 @@
 # @DESCRIPTION:
 # Strip C[XX]FLAGS of everything except known good/safe flags.
 strip-flags() {
-	local x y flag NEW_CFLAGS NEW_CXXFLAGS
+	local x y flag NEW_CFLAGS NEW_CXXFLAGS NEW_FFLAGS NEW_FCFLAGS
 
 	setup-allowed-flags
 
 	local NEW_CFLAGS=""
 	local NEW_CXXFLAGS=""
+	local NEW_FFLAGS=""
+	local NEW_FCFLAGS=""
 
 	# Allow unstable C[XX]FLAGS if we are using unstable profile ...
 	if has ~$(tc-arch) ${ACCEPT_KEYWORDS} ; then
@@ -310,6 +327,26 @@
 		done
 	done
 
+	for x in ${FFLAGS}; do
+		for y in ${ALLOWED_FLAGS}; do
+			flag=${x%%=*}
+			if [ "${flag%%${y}}" = "" ] ; then
+				NEW_FFLAGS="${NEW_FFLAGS} ${x}"
+				break
+			fi
+		done
+	done
+
+	for x in ${FCFLAGS}; do
+		for y in ${ALLOWED_FLAGS}; do
+			flag=${x%%=*}
+			if [ "${flag%%${y}}" = "" ] ; then
+				NEW_FCFLAGS="${NEW_FCFLAGS} ${x}"
+				break
+			fi
+		done
+	done
+
 	# In case we filtered out all optimization flags fallback to -O2
 	if [ "${CFLAGS/-O}" != "${CFLAGS}" -a "${NEW_CFLAGS/-O}" = "${NEW_CFLAGS}" ]; then
 		NEW_CFLAGS="${NEW_CFLAGS} -O2"
@@ -317,11 +354,19 @@
 	if [ "${CXXFLAGS/-O}" != "${CXXFLAGS}" -a "${NEW_CXXFLAGS/-O}" = "${NEW_CXXFLAGS}" ]; then
 		NEW_CXXFLAGS="${NEW_CXXFLAGS} -O2"
 	fi
+	if [ "${FFLAGS/-O}" != "${FFLAGS}" -a "${NEW_FFLAGS/-O}" = "${NEW_FFLAGS}" ]; then
+		NEW_FFLAGS="${NEW_FFLAGS} -O2"
+	fi
+	if [ "${FCFLAGS/-O}" != "${FCFLAGS}" -a "${NEW_FCFLAGS/-O}" = "${NEW_FCFLAGS}" ]; then
+		NEW_FCFLAGS="${NEW_FCFLAGS} -O2"
+	fi
 
 	set +f	# re-enable pathname expansion
 
 	export CFLAGS="${NEW_CFLAGS}"
 	export CXXFLAGS="${NEW_CXXFLAGS}"
+	export FFLAGS="${NEW_FFLAGS}"
+	export FCFLAGS="${NEW_FCFLAGS}"
 	return 0
 }
 
@@ -349,6 +394,18 @@
 # Returns shell true if <flag> is supported by the C++ compiler, else returns shell false.
 test-flag-CXX() { test-flag-PROG "CXX" "$1"; }
 
+# @FUNCTION: test-flag-F77
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is supported by the Fortran 77 compiler, else returns shell false.
+test-flag-F77() { test-flag-PROG "F77" "$1"; }
+
+# @FUNCTION: test-flag-FC
+# @USAGE: <flag>
+# @DESCRIPTION:
+# Returns shell true if <flag> is supported by the Fortran 90 compiler, else returns shell false.
+test-flag-FC() { test-flag-PROG "FC" "$1"; }
+
 test-flags-PROG() {
 	local comp=$1
 	local flags
@@ -381,6 +438,18 @@
 # Returns shell true if <flags> are supported by the C++ compiler, else returns shell false.
 test-flags-CXX() { test-flags-PROG "CXX" "$@"; }
 
+# @FUNCTION: test-flags-F77
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Returns shell true if <flags> are supported by the Fortran 77 compiler, else returns shell false.
+test-flags-F77() { test-flags-PROG "F77" "$@"; }
+
+# @FUNCTION: test-flags-FC
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Returns shell true if <flags> are supported by the Fortran 90 compiler, else returns shell false.
+test-flags-FC() { test-flags-PROG "FC" "$@"; }
+
 # @FUNCTION: test-flags
 # @USAGE: <flags>
 # @DESCRIPTION:
@@ -412,10 +481,12 @@
 
 # @FUNCTION: strip-unsupported-flags
 # @DESCRIPTION:
-# Strip C[XX]FLAGS of any flags not supported by the active toolchain.
+# Strip {C,CXX,F,FC}FLAGS of any flags not supported by the active toolchain.
 strip-unsupported-flags() {
 	export CFLAGS=$(test-flags-CC ${CFLAGS})
 	export CXXFLAGS=$(test-flags-CXX ${CXXFLAGS})
+	export FFLAGS=$(test-flags-F77 ${FFLAGS})
+	export FCFLAGS=$(test-flags-FC ${FCFLAGS})
 }
 
 # @FUNCTION: get-flag
@@ -430,7 +501,7 @@
 	# for example, if CFLAGS="-march=i686":
 	# `get-flag -march` == "-march=i686"
 	# `get-flag march` == "i686"
-	for f in ${CFLAGS} ${CXXFLAGS} ; do
+	for f in ${CFLAGS} ${CXXFLAGS} ${FFLAGS} ${FCFLAGS} ; do
 		if [ "${f/${findflag}}" != "${f}" ] ; then
 			printf "%s\n" "${f/-${findflag}=}"
 			return 0



-- 
gentoo-commits@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-09-14 19:43 Ryan Hill (dirtyepic)
  0 siblings, 0 replies; 64+ messages in thread
From: Ryan Hill (dirtyepic) @ 2008-09-14 19:43 UTC (permalink / raw
  To: gentoo-commits

dirtyepic    08/09/14 19:43:41

  Modified:             flag-o-matic.eclass
  Log:
  Also declare new_FFLAGS and new_FCFLAGS as arrays in replace-flags().  Bug #234249.

Revision  Changes    Path
1.125                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.125&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.125&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.124&r2=1.125

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.124
retrieving revision 1.125
diff -u -r1.124 -r1.125
--- flag-o-matic.eclass	3 Jul 2008 05:30:54 -0000	1.124
+++ flag-o-matic.eclass	14 Sep 2008 19:43:41 -0000	1.125
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.124 2008/07/03 05:30:54 dberkholz Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.125 2008/09/14 19:43:41 dirtyepic Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -175,7 +175,7 @@
 		&& die "replace-flags takes 2 arguments, not $#"
 
 	local f fset
-	declare -a new_CFLAGS new_CXXFLAGS
+	declare -a new_CFLAGS new_CXXFLAGS new_FFLAGS new_FCFLAGS
 
 	for fset in CFLAGS CXXFLAGS FFLAGS FCFLAGS; do
 		# Looping over the flags instead of using a global






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-11-03  5:52 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2008-11-03  5:52 UTC (permalink / raw
  To: gentoo-commits

vapier      08/11/03 05:52:39

  Modified:             flag-o-matic.eclass
  Log:
  do not filter TOC related flags for ppc64

Revision  Changes    Path
1.126                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.126&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.126&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.125&r2=1.126

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.125
retrieving revision 1.126
diff -u -r1.125 -r1.126
--- flag-o-matic.eclass	14 Sep 2008 19:43:41 -0000	1.125
+++ flag-o-matic.eclass	3 Nov 2008 05:52:39 -0000	1.126
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.125 2008/09/14 19:43:41 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.126 2008/11/03 05:52:39 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -51,7 +51,7 @@
 		-mflat -mno-flat -mno-faster-structs -mfaster-structs \
 		-m32 -m64 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
-		-msecure-plt -D*"
+		-msecure-plt -m*-toc -D*"
 
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2008-12-21 21:40 Ned Ludd (solar)
  0 siblings, 0 replies; 64+ messages in thread
From: Ned Ludd (solar) @ 2008-12-21 21:40 UTC (permalink / raw
  To: gentoo-commits

solar       08/12/21 21:40:49

  Modified:             flag-o-matic.eclass
  Log:
  gcc emits -fstrict-overflow on '>gcc-4.2' need to be able to disable that and pass -U to undefine bad defines - http://gcc.gnu.org/gcc-4.2/changes.html

Revision  Changes    Path
1.127                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.127&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.127&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.126&r2=1.127

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.126
retrieving revision 1.127
diff -u -r1.126 -r1.127
--- flag-o-matic.eclass	3 Nov 2008 05:52:39 -0000	1.126
+++ flag-o-matic.eclass	21 Dec 2008 21:40:49 -0000	1.127
@@ -1,6 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.126 2008/11/03 05:52:39 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.127 2008/12/21 21:40:49 solar Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -33,7 +33,7 @@
 		export ALLOWED_FLAGS="-pipe"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -O -O0 -O1 -O2 -mcpu -march -mtune"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fstack-protector -fstack-protector-all"
-		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fbounds-checking"
+		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fbounds-checking -fno-strict-overflow"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-PIE -fno-pie -fno-unit-at-a-time"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -g -g[0-9] -ggdb -ggdb[0-9] -gstabs -gstabs+"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-ident"
@@ -41,7 +41,7 @@
 	fi
 	# allow a bunch of flags that negate features / control ABI
 	ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-stack-protector -fno-stack-protector-all \
-		-fno-strict-aliasing -fno-bounds-checking"
+		-fno-strict-aliasing -fno-bounds-checking -fstrict-overflow"
 	ALLOWED_FLAGS="${ALLOWED_FLAGS} -mregparm -mno-app-regs -mapp-regs \
 		-mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow \
 		-mips1 -mips2 -mips3 -mips4 -mips32 -mips64 -mips16 \
@@ -51,7 +51,7 @@
 		-mflat -mno-flat -mno-faster-structs -mfaster-structs \
 		-m32 -m64 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
-		-msecure-plt -m*-toc -D*"
+		-msecure-plt -m*-toc -D* -U*"
 
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-01-04 17:22 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2009-01-04 17:22 UTC (permalink / raw
  To: gentoo-commits

vapier      09/01/04 17:22:16

  Modified:             flag-o-matic.eclass
  Log:
  neuter bindnow-flags even more

Revision  Changes    Path
1.129                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.129&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.129&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.128&r2=1.129

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -r1.128 -r1.129
--- flag-o-matic.eclass	2 Jan 2009 22:14:18 -0000	1.128
+++ flag-o-matic.eclass	4 Jan 2009 17:22:16 -0000	1.129
@@ -1,6 +1,6 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.128 2009/01/02 22:14:18 gengor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.129 2009/01/04 17:22:16 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -694,21 +694,7 @@
 # @DESCRIPTION:
 # DEPRECATED - Gets the flags needed for "NOW" binding
 bindnow-flags() {
-	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild" >&2
-
-	case $($(tc-getLD) -v 2>&1 </dev/null) in
-	*GNU* | *'with BFD'*) # GNU ld
-		echo "-Wl,-z,now" ;;
-	*Apple*) # Darwin ld
-		echo "-bind_at_load" ;;
-	*)
-		# Some linkers just recognize -V instead of -v
-		case $($(tc-getLD) -V 2>&1 </dev/null) in
-			*Solaris*) # Solaris accept almost the same GNU options
-				echo "-Wl,-z,now" ;;
-		esac
-		;;
-	esac
+	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
 }
 
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-01-08  8:12 Gordon Malm (gengor)
  0 siblings, 0 replies; 64+ messages in thread
From: Gordon Malm (gengor) @ 2009-01-08  8:12 UTC (permalink / raw
  To: gentoo-commits

gengor      09/01/08 08:12:55

  Modified:             flag-o-matic.eclass
  Log:
  Fix typo, there is no gcc-specs-ssp-all function

Revision  Changes    Path
1.130                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.130&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.130&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.129&r2=1.130

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.129
retrieving revision 1.130
diff -u -r1.129 -r1.130
--- flag-o-matic.eclass	4 Jan 2009 17:22:16 -0000	1.129
+++ flag-o-matic.eclass	8 Jan 2009 08:12:55 -0000	1.130
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.129 2009/01/04 17:22:16 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.130 2009/01/08 08:12:55 gengor Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -558,7 +558,7 @@
 	# note; this matches only -fstack-protector-all
 	[[ ${CFLAGS/-fstack-protector-all} != ${CFLAGS} || \
 	   -n $(echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep __SSP_ALL__) ]] || \
-	gcc-specs-ssp-all
+	gcc-specs-ssp-to-all
 }
 
 # @FUNCTION: has_ssp






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-01-08 11:29 Gordon Malm (gengor)
  0 siblings, 0 replies; 64+ messages in thread
From: Gordon Malm (gengor) @ 2009-01-08 11:29 UTC (permalink / raw
  To: gentoo-commits

gengor      09/01/08 11:29:06

  Modified:             flag-o-matic.eclass
  Log:
  Only append flags in _filter-hardened if they are valid

Revision  Changes    Path
1.131                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.131&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.131&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.130&r2=1.131

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.130
retrieving revision 1.131
diff -u -r1.130 -r1.131
--- flag-o-matic.eclass	8 Jan 2009 08:12:55 -0000	1.130
+++ flag-o-matic.eclass	8 Jan 2009 11:29:06 -0000	1.131
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.130 2009/01/08 08:12:55 gengor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.131 2009/01/08 11:29:06 gengor Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -73,13 +73,13 @@
 				is-flagq -nopie || append-flags -nopie;;
 			-fstack-protector)
 				gcc-specs-ssp || continue
-				is-flagq -fno-stack-protector || append-flags -fno-stack-protector;;
+				is-flagq -fno-stack-protector || append-flags $(test-flags -fno-stack-protector);;
 			-fstack-protector-all)
 				gcc-specs-ssp-to-all || continue
-				is-flagq -fno-stack-protector-all || append-flags -fno-stack-protector-all;;
+				is-flagq -fno-stack-protector-all || append-flags $(test-flags -fno-stack-protector-all);;
 			-fno-strict-overflow)
 				gcc-specs-nostrict || continue
-				is-flagq -fstrict-overflow || append-flags -fstrict-overflow;;
+				is-flagq -fstrict-overflow || append-flags $(test-flags -fstrict-overflow);;
 		esac
 	done
 }






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-01-21  0:42 Gordon Malm (gengor)
  0 siblings, 0 replies; 64+ messages in thread
From: Gordon Malm (gengor) @ 2009-01-21  0:42 UTC (permalink / raw
  To: gentoo-commits

gengor      09/01/21 00:42:20

  Modified:             flag-o-matic.eclass
  Log:
  Add append-cxxflags function

Revision  Changes    Path
1.132                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.132&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.132&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.131&r2=1.132

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.131
retrieving revision 1.132
diff -u -r1.131 -r1.132
--- flag-o-matic.eclass	8 Jan 2009 11:29:06 -0000	1.131
+++ flag-o-matic.eclass	21 Jan 2009 00:42:20 -0000	1.132
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.131 2009/01/08 11:29:06 gengor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.132 2009/01/21 00:42:20 gengor Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -136,6 +136,16 @@
 	return 0
 }
 
+# @FUNCTION: append-cxxflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to the current CXXFLAGS.
+append-cxxflags() {
+	[[ -z $* ]] && return 0
+	export CXXFLAGS="${CXXFLAGS} $*"
+	return 0
+}
+
 # @FUNCTION: append-fflags
 # @USAGE: <flags>
 # @DESCRIPTION:






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-04-04 17:57 Fabian Groffen (grobian)
  0 siblings, 0 replies; 64+ messages in thread
From: Fabian Groffen (grobian) @ 2009-04-04 17:57 UTC (permalink / raw
  To: gentoo-commits

grobian     09/04/04 17:57:54

  Modified:             flag-o-matic.eclass
  Log:
  backport fix for x86-macos in filter-flags from Prefix

Revision  Changes    Path
1.133                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.133&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.133&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.132&r2=1.133

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.132
retrieving revision 1.133
diff -u -r1.132 -r1.133
--- flag-o-matic.eclass	21 Jan 2009 00:42:20 -0000	1.132
+++ flag-o-matic.eclass	4 Apr 2009 17:57:54 -0000	1.133
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.132 2009/01/21 00:42:20 gengor Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.133 2009/04/04 17:57:54 grobian Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -52,6 +52,12 @@
 		-m32 -m64 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
 		-msecure-plt -m*-toc -D* -U*"
+	
+	# killing these two on OSX/Intel will disable SSE, resulting in failing
+	# compilations, as the headers expect SSE to be enabled (Apple knows what
+	# hardware they run on afterall, don't they?)
+	[[ ${CHOST} == i?86-apple-darwin* ]] \
+		&& ALLOWED_FLAGS="${ALLOWED_FLAGS} -march=prescott -march=nocona"
 
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-04-05  8:22 Fabian Groffen (grobian)
  0 siblings, 0 replies; 64+ messages in thread
From: Fabian Groffen (grobian) @ 2009-04-05  8:22 UTC (permalink / raw
  To: gentoo-commits

grobian     09/04/05 08:22:29

  Modified:             flag-o-matic.eclass
  Log:
  remove the Darwin hook, it seemingly has been obsoleted

Revision  Changes    Path
1.134                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.134&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.134&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.133&r2=1.134

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.133
retrieving revision 1.134
diff -u -r1.133 -r1.134
--- flag-o-matic.eclass	4 Apr 2009 17:57:54 -0000	1.133
+++ flag-o-matic.eclass	5 Apr 2009 08:22:29 -0000	1.134
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.133 2009/04/04 17:57:54 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.134 2009/04/05 08:22:29 grobian Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -53,12 +53,6 @@
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
 		-msecure-plt -m*-toc -D* -U*"
 	
-	# killing these two on OSX/Intel will disable SSE, resulting in failing
-	# compilations, as the headers expect SSE to be enabled (Apple knows what
-	# hardware they run on afterall, don't they?)
-	[[ ${CHOST} == i?86-apple-darwin* ]] \
-		&& ALLOWED_FLAGS="${ALLOWED_FLAGS} -march=prescott -march=nocona"
-
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's
 	export UNSTABLE_FLAGS="-Os -O3 -freorder-blocks"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-05-23 23:12 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2009-05-23 23:12 UTC (permalink / raw
  To: gentoo-commits

vapier      09/05/23 23:12:07

  Modified:             flag-o-matic.eclass
  Log:
  add a dedicated append-cflags function and define append-flags in terms of other append-*flags functions

Revision  Changes    Path
1.136                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.136&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.136&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.135&r2=1.136

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.135
retrieving revision 1.136
diff -u -r1.135 -r1.136
--- flag-o-matic.eclass	23 May 2009 23:06:55 -0000	1.135
+++ flag-o-matic.eclass	23 May 2009 23:12:07 -0000	1.136
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.135 2009/05/23 23:06:55 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.136 2009/05/23 23:12:07 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -136,6 +136,16 @@
 	return 0
 }
 
+# @FUNCTION: append-cflags
+# @USAGE: <flags>
+# @DESCRIPTION:
+# Add extra <flags> to the current CFLAGS.
+append-cppflags() {
+	[[ -z $* ]] && return 0
+	export CFLAGS="${CFLAGS} $*"
+	return 0
+}
+
 # @FUNCTION: append-cxxflags
 # @USAGE: <flags>
 # @DESCRIPTION:
@@ -171,10 +181,9 @@
 # Add extra <flags> to your current {C,CXX,F,FC}FLAGS.
 append-flags() {
 	[[ -z $* ]] && return 0
-	export CFLAGS="${CFLAGS} $*"
-	export CXXFLAGS="${CXXFLAGS} $*"
-	export FFLAGS="${FFLAGS} $*"
-	export FCFLAGS="${FCFLAGS} $*"
+	append-cflags "$@"
+	append-cppflags "$@"
+	append-fflags "$@"
 	return 0
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-05-24  0:33 Michael Sterrett (mr_bones_)
  0 siblings, 0 replies; 64+ messages in thread
From: Michael Sterrett (mr_bones_) @ 2009-05-24  0:33 UTC (permalink / raw
  To: gentoo-commits

mr_bones_    09/05/24 00:33:33

  Modified:             flag-o-matic.eclass
  Log:
  typo fix: cpp->c for append-cflags

Revision  Changes    Path
1.137                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.137&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.137&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.136&r2=1.137

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.136
retrieving revision 1.137
diff -u -r1.136 -r1.137
--- flag-o-matic.eclass	23 May 2009 23:12:07 -0000	1.136
+++ flag-o-matic.eclass	24 May 2009 00:33:33 -0000	1.137
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.136 2009/05/23 23:12:07 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.137 2009/05/24 00:33:33 mr_bones_ Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -140,7 +140,7 @@
 # @USAGE: <flags>
 # @DESCRIPTION:
 # Add extra <flags> to the current CFLAGS.
-append-cppflags() {
+append-cflags() {
 	[[ -z $* ]] && return 0
 	export CFLAGS="${CFLAGS} $*"
 	return 0






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-05-26  7:18 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2009-05-26  7:18 UTC (permalink / raw
  To: gentoo-commits

vapier      09/05/26 07:18:33

  Modified:             flag-o-matic.eclass
  Log:
  fix another think-o in append-flags unification #271141 by Sebastian Lechte

Revision  Changes    Path
1.138                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.138&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.138&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.137&r2=1.138

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.137
retrieving revision 1.138
diff -u -r1.137 -r1.138
--- flag-o-matic.eclass	24 May 2009 00:33:33 -0000	1.137
+++ flag-o-matic.eclass	26 May 2009 07:18:33 -0000	1.138
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.137 2009/05/24 00:33:33 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.138 2009/05/26 07:18:33 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -182,7 +182,7 @@
 append-flags() {
 	[[ -z $* ]] && return 0
 	append-cflags "$@"
-	append-cppflags "$@"
+	append-cxxflags "$@"
 	append-fflags "$@"
 	return 0
 }






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-06-09 22:15 Ryan Hill (dirtyepic)
  0 siblings, 0 replies; 64+ messages in thread
From: Ryan Hill (dirtyepic) @ 2009-06-09 22:15 UTC (permalink / raw
  To: gentoo-commits

dirtyepic    09/06/09 22:15:43

  Modified:             flag-o-matic.eclass
  Log:
  Update with new instruction sets.

Revision  Changes    Path
1.139                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.139&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.139&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.138&r2=1.139

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.138
retrieving revision 1.139
diff -u -r1.138 -r1.139
--- flag-o-matic.eclass	26 May 2009 07:18:33 -0000	1.138
+++ flag-o-matic.eclass	9 Jun 2009 22:15:43 -0000	1.139
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.138 2009/05/26 07:18:33 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.139 2009/06/09 22:15:43 dirtyepic Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -43,7 +43,9 @@
 	ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-stack-protector -fno-stack-protector-all \
 		-fno-strict-aliasing -fno-bounds-checking -fstrict-overflow -fno-omit-frame-pointer"
 	ALLOWED_FLAGS="${ALLOWED_FLAGS} -mregparm -mno-app-regs -mapp-regs \
-		-mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow \
+		-mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-ssse3 -mno-sse4 -mno-sse4.1 \
+		-mno-sse4.2 -mno-avx -mno-aes -mno-pclmul -mno-sse4a -mno-3dnow \
+		-mno-popcnt -mno-abm \
 		-mips1 -mips2 -mips3 -mips4 -mips32 -mips64 -mips16 \
 		-msoft-float -mno-soft-float -mhard-float -mno-hard-float -mfpu \
 		-mieee -mieee-with-inexact -mschedule \






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-07-20  4:28 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2009-07-20  4:28 UTC (permalink / raw
  To: gentoo-commits

vapier      09/07/20 04:28:07

  Modified:             flag-o-matic.eclass
  Log:
  add -mplt to allowed flags #278276 by Zhang Le

Revision  Changes    Path
1.140                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.140&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.140&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.139&r2=1.140

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.139
retrieving revision 1.140
diff -u -r1.139 -r1.140
--- flag-o-matic.eclass	9 Jun 2009 22:15:43 -0000	1.139
+++ flag-o-matic.eclass	20 Jul 2009 04:28:07 -0000	1.140
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.139 2009/06/09 22:15:43 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.140 2009/07/20 04:28:07 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -46,7 +46,7 @@
 		-mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-ssse3 -mno-sse4 -mno-sse4.1 \
 		-mno-sse4.2 -mno-avx -mno-aes -mno-pclmul -mno-sse4a -mno-3dnow \
 		-mno-popcnt -mno-abm \
-		-mips1 -mips2 -mips3 -mips4 -mips32 -mips64 -mips16 \
+		-mips1 -mips2 -mips3 -mips4 -mips32 -mips64 -mips16 -mplt \
 		-msoft-float -mno-soft-float -mhard-float -mno-hard-float -mfpu \
 		-mieee -mieee-with-inexact -mschedule \
 		-mtls-direct-seg-refs -mno-tls-direct-seg-refs \






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-07-29  8:31 Samuli Suominen (ssuominen)
  0 siblings, 0 replies; 64+ messages in thread
From: Samuli Suominen (ssuominen) @ 2009-07-29  8:31 UTC (permalink / raw
  To: gentoo-commits

ssuominen    09/07/29 08:31:32

  Modified:             flag-o-matic.eclass
  Log:
  Die if bindnow-flags is detected. Nothing in tree is using it anymore, including any of the old revisions.

Revision  Changes    Path
1.141                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.141&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.141&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.140&r2=1.141

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.140
retrieving revision 1.141
diff -u -r1.140 -r1.141
--- flag-o-matic.eclass	20 Jul 2009 04:28:07 -0000	1.140
+++ flag-o-matic.eclass	29 Jul 2009 08:31:32 -0000	1.141
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.140 2009/07/20 04:28:07 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.141 2009/07/29 08:31:32 ssuominen Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -715,7 +715,8 @@
 # @DESCRIPTION:
 # DEPRECATED - Gets the flags needed for "NOW" binding
 bindnow-flags() {
-	ewarn "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
+	eerror "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
+	die || "Stop using bindnow-flags."
 }
 
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-07-29  8:32 Samuli Suominen (ssuominen)
  0 siblings, 0 replies; 64+ messages in thread
From: Samuli Suominen (ssuominen) @ 2009-07-29  8:32 UTC (permalink / raw
  To: gentoo-commits

ssuominen    09/07/29 08:32:43

  Modified:             flag-o-matic.eclass
  Log:
  err.

Revision  Changes    Path
1.142                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.142&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.142&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.141&r2=1.142

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.141
retrieving revision 1.142
diff -u -r1.141 -r1.142
--- flag-o-matic.eclass	29 Jul 2009 08:31:32 -0000	1.141
+++ flag-o-matic.eclass	29 Jul 2009 08:32:43 -0000	1.142
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.141 2009/07/29 08:31:32 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.142 2009/07/29 08:32:43 ssuominen Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -716,7 +716,7 @@
 # DEPRECATED - Gets the flags needed for "NOW" binding
 bindnow-flags() {
 	eerror "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
-	die || "Stop using bindnow-flags."
+	die "Stop using bindnow-flags."
 }
 
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-08-15 18:04 Zac Medico (zmedico)
  0 siblings, 0 replies; 64+ messages in thread
From: Zac Medico (zmedico) @ 2009-08-15 18:04 UTC (permalink / raw
  To: gentoo-commits

zmedico     09/08/15 18:04:08

  Modified:             flag-o-matic.eclass
  Log:
  Bug #281311 - Escape ~ inside strip-flags().

Revision  Changes    Path
1.143                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.143&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.143&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.142&r2=1.143

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.142
retrieving revision 1.143
diff -u -r1.142 -r1.143
--- flag-o-matic.eclass	29 Jul 2009 08:32:43 -0000	1.142
+++ flag-o-matic.eclass	15 Aug 2009 18:04:08 -0000	1.143
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.142 2009/07/29 08:32:43 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.143 2009/08/15 18:04:08 zmedico Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -325,7 +325,7 @@
 	local NEW_FCFLAGS=""
 
 	# Allow unstable C[XX]FLAGS if we are using unstable profile ...
-	if has ~$(tc-arch) ${ACCEPT_KEYWORDS} ; then
+	if has \~$(tc-arch) ${ACCEPT_KEYWORDS} ; then
 		ALLOWED_FLAGS="${ALLOWED_FLAGS} ${UNSTABLE_FLAGS}"
 	fi
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2009-10-04 10:00 Samuli Suominen (ssuominen)
  0 siblings, 0 replies; 64+ messages in thread
From: Samuli Suominen (ssuominen) @ 2009-10-04 10:00 UTC (permalink / raw
  To: gentoo-commits

ssuominen    09/10/04 10:00:53

  Modified:             flag-o-matic.eclass
  Log:
  New function: no-as-needed which returns the value to disable asneeded, for GNU ld only at this time.

Revision  Changes    Path
1.145                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.145&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.145&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.144&r2=1.145

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.144
retrieving revision 1.145
diff -u -r1.144 -r1.145
--- flag-o-matic.eclass	16 Aug 2009 00:16:12 -0000	1.144
+++ flag-o-matic.eclass	4 Oct 2009 10:00:53 -0000	1.145
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.144 2009/08/16 00:16:12 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.145 2009/10/04 10:00:53 ssuominen Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -719,6 +719,14 @@
 	die "Stop using bindnow-flags."
 }
 
+# @FUNCTION: no-as-needed
+# @RETURN: Flag to disable asneeded behavior for use with append-ldflags.
+no-as-needed() {
+	case $($(tc-getLD) -v 2>&1 </dev/null) in
+		*GNU*) # GNU ld
+		echo "-Wl,--no-as-needed" ;;
+	esac
+}
 
 # Some tests for when we screw with things and want to make
 # sure we didn't break anything






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2010-02-17 18:20 Samuli Suominen (ssuominen)
  0 siblings, 0 replies; 64+ messages in thread
From: Samuli Suominen (ssuominen) @ 2010-02-17 18:20 UTC (permalink / raw
  To: gentoo-commits

ssuominen    10/02/17 18:20:50

  Modified:             flag-o-matic.eclass
  Log:
  Remove last of bindnow-flags.

Revision  Changes    Path
1.146                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.146&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.146&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.145&r2=1.146

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.145
retrieving revision 1.146
diff -u -r1.145 -r1.146
--- flag-o-matic.eclass	4 Oct 2009 10:00:53 -0000	1.145
+++ flag-o-matic.eclass	17 Feb 2010 18:20:49 -0000	1.146
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.145 2009/10/04 10:00:53 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.146 2010/02/17 18:20:49 ssuominen Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -710,15 +710,6 @@
 	echo "$@"
 }
 
-# @FUNCTION: bindnow-flags
-# @RETURN: Returns the flags to enable "now" binding in the current selected linker.
-# @DESCRIPTION:
-# DEPRECATED - Gets the flags needed for "NOW" binding
-bindnow-flags() {
-	eerror "QA: stop using the bindnow-flags function ... simply drop it from your ebuild"
-	die "Stop using bindnow-flags."
-}
-
 # @FUNCTION: no-as-needed
 # @RETURN: Flag to disable asneeded behavior for use with append-ldflags.
 no-as-needed() {






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2010-04-02  2:50 Jonathan Callen (abcd)
  0 siblings, 0 replies; 64+ messages in thread
From: Jonathan Callen (abcd) @ 2010-04-02  2:50 UTC (permalink / raw
  To: gentoo-commits

abcd        10/04/02 02:50:31

  Modified:             flag-o-matic.eclass
  Log:
  Add append-libs() function

Revision  Changes    Path
1.147                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.147&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.147&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.146&r2=1.147

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.146
retrieving revision 1.147
diff -u -r1.146 -r1.147
--- flag-o-matic.eclass	17 Feb 2010 18:20:49 -0000	1.146
+++ flag-o-matic.eclass	2 Apr 2010 02:50:29 -0000	1.147
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.146 2010/02/17 18:20:49 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.147 2010/04/02 02:50:29 abcd Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -668,6 +668,21 @@
 	export CFLAGS CXXFLAGS
 }
 
+# @FUNCTION: append-libs
+# @USAGE: <libs>
+# @DESCRIPTION:
+# Add extra <libs> to the current LIBS.
+append-libs() {
+	[[ -z $* ]] && return 0
+	local flag
+	for flag in "$@"; do
+		[[ ${flag} == -l* ]] && flag=${flag#-l}
+		export LIBS="${LIBS} -l${flag}"
+	done
+
+	return 0
+}
+
 # @FUNCTION: append-ldflags
 # @USAGE: <flags>
 # @DESCRIPTION:






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2010-05-08  3:47 Ryan Hill (dirtyepic)
  0 siblings, 0 replies; 64+ messages in thread
From: Ryan Hill (dirtyepic) @ 2010-05-08  3:47 UTC (permalink / raw
  To: gentoo-commits

dirtyepic    10/05/08 03:47:41

  Modified:             flag-o-matic.eclass
  Log:
  Add 4.5 -mno-* flags to exception list.

Revision  Changes    Path
1.148                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.148&view=markup
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.148&content-type=text/plain
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.147&r2=1.148

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.147
retrieving revision 1.148
diff -u -r1.147 -r1.148
--- flag-o-matic.eclass	2 Apr 2010 02:50:29 -0000	1.147
+++ flag-o-matic.eclass	8 May 2010 03:47:41 -0000	1.148
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.147 2010/04/02 02:50:29 abcd Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.148 2010/05/08 03:47:41 dirtyepic Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -55,6 +55,9 @@
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
 		-msecure-plt -m*-toc -D* -U*"
 
+	# 4.5
+	ALLOWED_FLAGS="${ALLOWED_FLAGS} -mno-fma4 -mno-movbe -mno-xop -mno-lwp"
+
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's
 	export UNSTABLE_FLAGS="-Os -O3 -freorder-blocks"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-02-01  5:41 Ryan Hill (dirtyepic)
  0 siblings, 0 replies; 64+ messages in thread
From: Ryan Hill (dirtyepic) @ 2011-02-01  5:41 UTC (permalink / raw
  To: gentoo-commits

dirtyepic    11/02/01 05:41:30

  Modified:             flag-o-matic.eclass
  Log:
  Add -mfloat-gprs, -mspe, and -mno-spe for bug #353008 and new flags for 4.6.

Revision  Changes    Path
1.149                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.149&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.149&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.148&r2=1.149

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.148
retrieving revision 1.149
diff -u -r1.148 -r1.149
--- flag-o-matic.eclass	8 May 2010 03:47:41 -0000	1.148
+++ flag-o-matic.eclass	1 Feb 2011 05:41:30 -0000	1.149
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.148 2010/05/08 03:47:41 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.149 2011/02/01 05:41:30 dirtyepic Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -48,7 +48,7 @@
 		-mno-popcnt -mno-abm \
 		-mips1 -mips2 -mips3 -mips4 -mips32 -mips64 -mips16 -mplt \
 		-msoft-float -mno-soft-float -mhard-float -mno-hard-float -mfpu \
-		-mieee -mieee-with-inexact -mschedule \
+		-mieee -mieee-with-inexact -mschedule -mfloat-gprs -mspe -mno-spe \
 		-mtls-direct-seg-refs -mno-tls-direct-seg-refs \
 		-mflat -mno-flat -mno-faster-structs -mfaster-structs \
 		-m32 -m64 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
@@ -57,6 +57,9 @@
 
 	# 4.5
 	ALLOWED_FLAGS="${ALLOWED_FLAGS} -mno-fma4 -mno-movbe -mno-xop -mno-lwp"
+	# 4.6
+	ALLOWED_FLAGS="${ALLOWED_FLAGS} -mno-fsgsbase -mno-rdrnd -mno-f16c \
+		-mno-bmi -mno-tbm"
 
 	# {C,CXX,F,FC}FLAGS that we are think is ok, but needs testing
 	# NOTE:  currently -Os have issues with gcc3 and K6* arch's






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-02-25 10:51 Ryan Hill (dirtyepic)
  0 siblings, 0 replies; 64+ messages in thread
From: Ryan Hill (dirtyepic) @ 2011-02-25 10:51 UTC (permalink / raw
  To: gentoo-commits

dirtyepic    11/02/25 10:51:44

  Modified:             flag-o-matic.eclass
  Log:
  Allow -fpermissive.

Revision  Changes    Path
1.150                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.150&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.150&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.149&r2=1.150

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.149
retrieving revision 1.150
diff -u -r1.149 -r1.150
--- flag-o-matic.eclass	1 Feb 2011 05:41:30 -0000	1.149
+++ flag-o-matic.eclass	25 Feb 2011 10:51:44 -0000	1.150
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.149 2011/02/01 05:41:30 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.150 2011/02/25 10:51:44 dirtyepic Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -36,7 +36,7 @@
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fbounds-checking -fno-strict-overflow"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-PIE -fno-pie -fno-unit-at-a-time"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -g -g[0-9] -ggdb -ggdb[0-9] -gstabs -gstabs+"
-		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-ident"
+		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -fno-ident -fpermissive"
 		export ALLOWED_FLAGS="${ALLOWED_FLAGS} -W* -w"
 	fi
 	# allow a bunch of flags that negate features / control ABI






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-07-12  3:58 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-07-12  3:58 UTC (permalink / raw
  To: gentoo-commits

vapier      11/07/12 03:58:11

  Modified:             flag-o-matic.eclass
  Log:
  turn `ewarn` for dead flags into `die`

Revision  Changes    Path
1.151                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.151&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.151&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.150&r2=1.151

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.150
retrieving revision 1.151
diff -u -r1.150 -r1.151
--- flag-o-matic.eclass	25 Feb 2011 10:51:44 -0000	1.150
+++ flag-o-matic.eclass	12 Jul 2011 03:58:11 -0000	1.151
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.150 2011/02/25 10:51:44 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.151 2011/07/12 03:58:11 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -487,15 +487,6 @@
 # its really only present due to the append-flags() abomination.
 test-flags() { test-flags-CC "$@"; }
 
-# @FUNCTION: test_flag
-# @DESCRIPTION:
-# DEPRICIATED, use test-flags()
-test_flag() {
-	ewarn "test_flag: deprecated, please use test-flags()!" >&2
-
-	test-flags-CC "$@"
-}
-
 # @FUNCTION: test_version_info
 # @USAGE: <version>
 # @DESCRIPTION:
@@ -540,66 +531,13 @@
 	return 1
 }
 
-# @FUNCTION: has_hardened
-# @DESCRIPTION:
-# DEPRECATED - use gcc-specs-relro or gcc-specs-now from toolchain-funcs
-has_hardened() {
-	ewarn "has_hardened: deprecated, please use gcc-specs-{relro,now}()!" >&2
-
-	test_version_info Hardened && return 0
-	# The specs file wont exist unless gcc has GCC_SPECS support
-	[[ -f ${GCC_SPECS} && ${GCC_SPECS} != ${GCC_SPECS/hardened/} ]]
-}
-
-# @FUNCTION: has_pic
-# @DESCRIPTION:
-# DEPRECATED - use gcc-specs-pie from toolchain-funcs
-# indicate whether PIC is set
-has_pic() {
-	ewarn "has_pic: deprecated, please use gcc-specs-pie()!" >&2
-
-	[[ ${CFLAGS/-fPIC} != ${CFLAGS} || \
-	   ${CFLAGS/-fpic} != ${CFLAGS} ]] || \
-	gcc-specs-pie
-}
-
-# @FUNCTION: has_pie
-# @DESCRIPTION:
-# DEPRECATED - use gcc-specs-pie from toolchain-funcs
-# indicate whether PIE is set
-has_pie() {
-	ewarn "has_pie: deprecated, please use gcc-specs-pie()!" >&2
-
-	[[ ${CFLAGS/-fPIE} != ${CFLAGS} || \
-	   ${CFLAGS/-fpie} != ${CFLAGS} ]] || \
-	gcc-specs-pie
-}
-
-# @FUNCTION: has_ssp_all
-# @DESCRIPTION:
-# DEPRECATED - use gcc-specs-ssp from toolchain-funcs
-# indicate whether code for SSP is being generated for all functions
-has_ssp_all() {
-	ewarn "has_ssp_all: deprecated, please use gcc-specs-ssp()!" >&2
-
-	# note; this matches only -fstack-protector-all
-	[[ ${CFLAGS/-fstack-protector-all} != ${CFLAGS} || \
-	   -n $(echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep __SSP_ALL__) ]] || \
-	gcc-specs-ssp-to-all
-}
-
-# @FUNCTION: has_ssp
-# @DESCRIPTION:
-# DEPRECATED - use gcc-specs-ssp from toolchain-funcs
-# indicate whether code for SSP is being generated
-has_ssp() {
-	ewarn "has_ssp: deprecated, please use gcc-specs-ssp()!" >&2
-
-	# note; this matches both -fstack-protector and -fstack-protector-all
-	[[ ${CFLAGS/-fstack-protector} != ${CFLAGS} || \
-	   -n $(echo | $(tc-getCC) ${CFLAGS} -E -dM - | grep __SSP__) ]] || \
-	gcc-specs-ssp
-}
+# DEAD FUNCS.  Remove by Dec 2011.
+test_flag()    { die "$0: deprecated, please use test-flags()!" ; }
+has_hardened() { die "$0: deprecated, please use gcc-specs-{relro,now}()!" ; }
+has_pic()      { die "$0: deprecated, please use gcc-specs-pie()!" ; }
+has_pie()      { die "$0: deprecated, please use gcc-specs-pie()!" ; }
+has_ssp_all()  { die "$0: deprecated, please use gcc-specs-ssp()!" ; }
+has_ssp()      { die "$0: deprecated, please use gcc-specs-ssp()!" ; }
 
 # @FUNCTION: has_m64
 # @DESCRIPTION:






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-07-12  4:08 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-07-12  4:08 UTC (permalink / raw
  To: gentoo-commits

vapier      11/07/12 04:08:52

  Modified:             flag-o-matic.eclass
  Log:
  use -c rather than -S when testing flags so that we can check for assembler flags and not just compiler flags (which lets use check -Wa,--xxx flags #373743)

Revision  Changes    Path
1.152                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.152&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.152&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.151&r2=1.152

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.151
retrieving revision 1.152
diff -u -r1.151 -r1.152
--- flag-o-matic.eclass	12 Jul 2011 03:58:11 -0000	1.151
+++ flag-o-matic.eclass	12 Jul 2011 04:08:52 -0000	1.152
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.151 2011/07/12 03:58:11 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.152 2011/07/12 04:08:52 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -404,11 +404,11 @@
 	local comp=$1
 	local flags="$2"
 
-	[[ -z ${comp} || -z ${flags} ]] && \
-		return 1
+	[[ -z ${comp} || -z ${flags} ]] && return 1
 
+	# use -c so we can test the assembler as well
 	local PROG=$(tc-get${comp})
-	${PROG} ${flags} -S -o /dev/null -xc /dev/null \
+	${PROG} ${flags} -c -o /dev/null -xc /dev/null \
 		> /dev/null 2>&1
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-08-17 17:54 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-08-17 17:54 UTC (permalink / raw
  To: gentoo-commits

vapier      11/08/17 17:54:48

  Modified:             flag-o-matic.eclass
  Log:
  document what each LFS flag does exactly

Revision  Changes    Path
1.153                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.153&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.153&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.152&r2=1.153

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.152
retrieving revision 1.153
diff -u -r1.152 -r1.153
--- flag-o-matic.eclass	12 Jul 2011 04:08:52 -0000	1.152
+++ flag-o-matic.eclass	17 Aug 2011 17:54:48 -0000	1.153
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.152 2011/07/12 04:08:52 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.153 2011/08/17 17:54:48 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -131,6 +131,10 @@
 # Remove flags that enable Large File Support.
 filter-lfs-flags() {
 	[[ -n $@ ]] && die "filter-lfs-flags takes no arguments"
+	# http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
+	# _LARGEFILE_SOURCE: enable support for new LFS funcs (ftello/etc...)
+	# _LARGEFILE64_SOURCE: enable support for 64bit variants (off64_t/fseeko64/etc...)
+	# _FILE_OFFSET_BITS: default to 64bit variants (off_t is defined as off64_t)
 	filter-flags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-08-17 17:59 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-08-17 17:59 UTC (permalink / raw
  To: gentoo-commits

vapier      11/08/17 17:59:35

  Modified:             flag-o-matic.eclass
  Log:
  test the actual # of args and not whether their expansion is an empty string

Revision  Changes    Path
1.154                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.154&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.154&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.153&r2=1.154

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.153
retrieving revision 1.154
diff -u -r1.153 -r1.154
--- flag-o-matic.eclass	17 Aug 2011 17:54:48 -0000	1.153
+++ flag-o-matic.eclass	17 Aug 2011 17:59:35 -0000	1.154
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.153 2011/08/17 17:54:48 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.154 2011/08/17 17:59:35 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -130,7 +130,7 @@
 # @DESCRIPTION:
 # Remove flags that enable Large File Support.
 filter-lfs-flags() {
-	[[ -n $@ ]] && die "filter-lfs-flags takes no arguments"
+	[[ $# -ne 0 ]] && die "filter-lfs-flags takes no arguments"
 	# http://www.gnu.org/s/libc/manual/html_node/Feature-Test-Macros.html
 	# _LARGEFILE_SOURCE: enable support for new LFS funcs (ftello/etc...)
 	# _LARGEFILE64_SOURCE: enable support for 64bit variants (off64_t/fseeko64/etc...)
@@ -183,7 +183,7 @@
 # @DESCRIPTION:
 # Add flags that enable Large File Support.
 append-lfs-flags() {
-	[[ -n $@ ]] && die "append-lfs-flags takes no arguments"
+	[[ $# -ne 0 ]] && die "append-lfs-flags takes no arguments"
 	append-cppflags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-08-17 18:20 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-08-17 18:20 UTC (permalink / raw
  To: gentoo-commits

vapier      11/08/17 18:20:59

  Modified:             flag-o-matic.eclass
  Log:
  add pointer to docs in append-lfs-flags too

Revision  Changes    Path
1.155                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.155&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.155&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.154&r2=1.155

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.154
retrieving revision 1.155
diff -u -r1.154 -r1.155
--- flag-o-matic.eclass	17 Aug 2011 17:59:35 -0000	1.154
+++ flag-o-matic.eclass	17 Aug 2011 18:20:59 -0000	1.155
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.154 2011/08/17 17:59:35 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.155 2011/08/17 18:20:59 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -184,6 +184,7 @@
 # Add flags that enable Large File Support.
 append-lfs-flags() {
 	[[ $# -ne 0 ]] && die "append-lfs-flags takes no arguments"
+	# see comments in filter-lfs-flags func for meaning of these
 	append-cppflags -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-10-08 18:37 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-10-08 18:37 UTC (permalink / raw
  To: gentoo-commits

vapier      11/10/08 18:37:30

  Modified:             flag-o-matic.eclass
  Log:
  document optional args to raw-ldflags

Revision  Changes    Path
1.156                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.156&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.156&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.155&r2=1.156

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.155
retrieving revision 1.156
diff -u -r1.155 -r1.156
--- flag-o-matic.eclass	17 Aug 2011 18:20:59 -0000	1.155
+++ flag-o-matic.eclass	8 Oct 2011 18:37:30 -0000	1.156
@@ -1,6 +1,6 @@
 # Copyright 1999-2009 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.155 2011/08/17 18:20:59 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.156 2011/10/08 18:37:30 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -658,11 +658,13 @@
 }
 
 # @FUNCTION: raw-ldflags
-# @USAGE: <flags>
+# @USAGE: [flags]
 # @DESCRIPTION:
 # Turn C style ldflags (-Wl,-foo) into straight ldflags - the results
 # are suitable for passing directly to 'ld'; note LDFLAGS is usually passed
 # to gcc where it needs the '-Wl,'.
+#
+# If no flags are specified, then default to ${LDFLAGS}.
 raw-ldflags() {
 	local x input="$@"
 	[[ -z ${input} ]] && input=${LDFLAGS}






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-11-14 20:29 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-11-14 20:29 UTC (permalink / raw
  To: gentoo-commits

vapier      11/11/14 20:29:03

  Modified:             flag-o-matic.eclass
  Log:
  move away from $* to "$@" to pass args sanely

Revision  Changes    Path
1.158                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.158&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.158&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.157&r2=1.158

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.157
retrieving revision 1.158
diff -u -r1.157 -r1.158
--- flag-o-matic.eclass	11 Nov 2011 07:06:25 -0000	1.157
+++ flag-o-matic.eclass	14 Nov 2011 20:29:03 -0000	1.158
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.157 2011/11/11 07:06:25 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.158 2011/11/14 20:29:03 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -143,7 +143,7 @@
 # @DESCRIPTION:
 # Add extra <flags> to the current CPPFLAGS.
 append-cppflags() {
-	[[ -z $* ]] && return 0
+	[[ $# -eq 0 ]] && return 0
 	export CPPFLAGS="${CPPFLAGS} $*"
 	return 0
 }
@@ -153,8 +153,8 @@
 # @DESCRIPTION:
 # Add extra <flags> to the current CFLAGS.
 append-cflags() {
-	[[ -z $* ]] && return 0
-	export CFLAGS=$(test-flags-CC ${CFLAGS} $*)
+	[[ $# -eq 0 ]] && return 0
+	export CFLAGS=$(test-flags-CC ${CFLAGS} "$@")
 	return 0
 }
 
@@ -163,8 +163,8 @@
 # @DESCRIPTION:
 # Add extra <flags> to the current CXXFLAGS.
 append-cxxflags() {
-	[[ -z $* ]] && return 0
-	export CXXFLAGS=$(test-flags-CXX ${CXXFLAGS} $*)
+	[[ $# -eq 0 ]] && return 0
+	export CXXFLAGS=$(test-flags-CXX ${CXXFLAGS} "$@")
 	return 0
 }
 
@@ -173,9 +173,9 @@
 # @DESCRIPTION:
 # Add extra <flags> to the current {F,FC}FLAGS.
 append-fflags() {
-	[[ -z $* ]] && return 0
-	export FFLAGS=$(test-flags-F77 ${FFLAGS} $*)
-	export FCFLAGS=$(test-flags-FC ${FCFLAGS} $*)
+	[[ $# -eq 0 ]] && return 0
+	export FFLAGS=$(test-flags-F77 ${FFLAGS} "$@")
+	export FCFLAGS=$(test-flags-FC ${FCFLAGS} "$@")
 	return 0
 }
 
@@ -193,7 +193,7 @@
 # @DESCRIPTION:
 # Add extra <flags> to your current {C,CXX,F,FC}FLAGS.
 append-flags() {
-	[[ -z $* ]] && return 0
+	[[ $# -eq 0 ]] && return 0
 	append-cflags "$@"
 	append-cxxflags "$@"
 	append-fflags "$@"
@@ -450,7 +450,6 @@
 
 	[[ -z ${comp} ]] && return 1
 
-	x=""
 	for x in "$@" ; do
 		test-flag-${comp} "${x}" && flags="${flags}${flags:+ }${x}"
 	done
@@ -622,7 +621,7 @@
 # @DESCRIPTION:
 # Add extra <libs> to the current LIBS.
 append-libs() {
-	[[ -z $* ]] && return 0
+	[[ $# -eq 0 ]] && return 0
 	local flag
 	for flag in "$@"; do
 		[[ ${flag} == -l* ]] && flag=${flag#-l}
@@ -637,7 +636,7 @@
 # @DESCRIPTION:
 # Add extra <flags> to the current LDFLAGS.
 append-ldflags() {
-	[[ -z $* ]] && return 0
+	[[ $# -eq 0 ]] && return 0
 	local flag
 	for flag in "$@"; do
 		[[ ${flag} == -l* ]] && \






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-12-07  6:42 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-12-07  6:42 UTC (permalink / raw
  To: gentoo-commits

vapier      11/12/07 06:42:40

  Modified:             flag-o-matic.eclass
  Log:
  allow -mx32 ABI flag

Revision  Changes    Path
1.159                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.159&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.159&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.158&r2=1.159

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.158
retrieving revision 1.159
diff -u -r1.158 -r1.159
--- flag-o-matic.eclass	14 Nov 2011 20:29:03 -0000	1.158
+++ flag-o-matic.eclass	7 Dec 2011 06:42:40 -0000	1.159
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.158 2011/11/14 20:29:03 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.159 2011/12/07 06:42:40 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -51,7 +51,7 @@
 		-mieee -mieee-with-inexact -mschedule -mfloat-gprs -mspe -mno-spe \
 		-mtls-direct-seg-refs -mno-tls-direct-seg-refs \
 		-mflat -mno-flat -mno-faster-structs -mfaster-structs \
-		-m32 -m64 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
+		-m32 -m64 -mx32 -mabi -mlittle-endian -mbig-endian -EL -EB -fPIC \
 		-mlive-g0 -mcmodel -mstack-bias -mno-stack-bias \
 		-msecure-plt -m*-toc -D* -U*"
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2011-12-15  5:23 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2011-12-15  5:23 UTC (permalink / raw
  To: gentoo-commits

vapier      11/12/15 05:23:15

  Modified:             flag-o-matic.eclass
  Log:
  relocate tests to tests/ subdir

Revision  Changes    Path
1.161                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.161&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.161&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.160&r2=1.161

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.160
retrieving revision 1.161
diff -u -r1.160 -r1.161
--- flag-o-matic.eclass	10 Dec 2011 20:03:17 -0000	1.160
+++ flag-o-matic.eclass	15 Dec 2011 05:23:15 -0000	1.161
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.160 2011/12/10 20:03:17 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.161 2011/12/15 05:23:15 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -687,30 +687,4 @@
 	esac
 }
 
-# Some tests for when we screw with things and want to make
-# sure we didn't break anything
-#TESTS() {
-#	CFLAGS="-a -b -c=1"
-#	CXXFLAGS="-x -y -z=2"
-#	LDFLAGS="-l -m -n=3"
-#
-#	die() { exit 1; }
-#	(is-flag 1 2 3) && die
-#	(is-ldflag 1 2 3) && die
-#
-#	is-flagq -l && die
-#	is-ldflagq -a && die
-#	is-flagq -a || die
-#	is-flagq -x || die
-#	is-ldflagq -n=* || die
-#	is-ldflagq -n && die
-#
-#	strip-unsupported-flags
-#	[[ ${CFLAGS} == "-c=1" ]] || die
-#	[[ ${CXXFLAGS} == "-y -z=2" ]] || die
-#
-#	echo "All tests pass"
-#}
-#TESTS
-
 fi






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-01-13 22:40 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-01-13 22:40 UTC (permalink / raw
  To: gentoo-commits

vapier      12/01/13 22:40:29

  Modified:             flag-o-matic.eclass
  Log:
  have filter-flags filter out LDFLAGS too #395619

Revision  Changes    Path
1.164                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.164&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.164&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.163&r2=1.164

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.163
retrieving revision 1.164
diff -u -r1.163 -r1.164
--- flag-o-matic.eclass	28 Dec 2011 06:28:55 -0000	1.163
+++ flag-o-matic.eclass	13 Jan 2012 22:40:29 -0000	1.164
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.163 2011/12/28 06:28:55 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.164 2012/01/13 22:40:29 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -113,14 +113,13 @@
 # @FUNCTION: filter-flags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Remove particular <flags> from {C,CPP,CXX,F,FC}FLAGS.  Accepts shell globs.
+# Remove particular <flags> from {C,CPP,CXX,F,FC,LD}FLAGS.  Accepts shell globs.
 filter-flags() {
 	_filter-hardened "$@"
-	_filter-var CFLAGS "$@"
-	_filter-var CPPFLAGS "$@"
-	_filter-var CXXFLAGS "$@"
-	_filter-var FFLAGS "$@"
-	_filter-var FCFLAGS "$@"
+	local v
+	for v in C CPP CXX F FC LD ; do
+		_filter-var ${v}FLAGS "$@"
+	done
 	return 0
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-01-14  8:05 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-01-14  8:05 UTC (permalink / raw
  To: gentoo-commits

vapier      12/01/14 08:05:32

  Modified:             flag-o-matic.eclass
  Log:
  delete dead funcs

Revision  Changes    Path
1.165                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.165&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.165&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.164&r2=1.165

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.164
retrieving revision 1.165
diff -u -r1.164 -r1.165
--- flag-o-matic.eclass	13 Jan 2012 22:40:29 -0000	1.164
+++ flag-o-matic.eclass	14 Jan 2012 08:05:32 -0000	1.165
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.164 2012/01/13 22:40:29 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.165 2012/01/14 08:05:32 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -15,20 +15,6 @@
 
 inherit eutils toolchain-funcs multilib
 
-################ DEPRECATED functions ################
-# The following are still present to avoid breaking existing
-# code more than necessary; however they are deprecated. Please
-# use gcc-specs-* from toolchain-funcs.eclass instead, if you
-# need to know which hardened techs are active in the compiler.
-# See bug #100974
-#
-# has_hardened
-# has_pie
-# has_pic
-# has_ssp_all
-# has_ssp
-
-
 # {C,CXX,F,FC}FLAGS that we allow in strip-flags
 # Note: shell globs and character lists are allowed
 setup-allowed-flags() {
@@ -527,14 +513,6 @@
 	return 1
 }
 
-# DEAD FUNCS.  Remove by Dec 2011.
-test_flag()    { die "$0: deprecated, please use test-flags()!" ; }
-has_hardened() { die "$0: deprecated, please use gcc-specs-{relro,now}()!" ; }
-has_pic()      { die "$0: deprecated, please use gcc-specs-pie()!" ; }
-has_pie()      { die "$0: deprecated, please use gcc-specs-pie()!" ; }
-has_ssp_all()  { die "$0: deprecated, please use gcc-specs-ssp()!" ; }
-has_ssp()      { die "$0: deprecated, please use gcc-specs-ssp()!" ; }
-
 # @FUNCTION: has_m64
 # @DESCRIPTION:
 # This doesn't test if the flag is accepted, it tests if the flag actually






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-01-14  8:22 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-01-14  8:22 UTC (permalink / raw
  To: gentoo-commits

vapier      12/01/14 08:22:14

  Modified:             flag-o-matic.eclass
  Log:
  mark has_m32 as dead since no one uses it, and mark has_m64 as a warning until xalan-c gets fixed #398855

Revision  Changes    Path
1.166                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.166&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.166&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.165&r2=1.166

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.165
retrieving revision 1.166
diff -u -r1.165 -r1.166
--- flag-o-matic.eclass	14 Jan 2012 08:05:32 -0000	1.165
+++ flag-o-matic.eclass	14 Jan 2012 08:22:13 -0000	1.166
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.165 2012/01/14 08:05:32 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.166 2012/01/14 08:22:13 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -519,6 +519,8 @@
 # WORKS. Non-multilib gcc will take both -m32 and -m64. If the flag works
 # return code is 0, else the return code is 1.
 has_m64() {
+	eqawarn "${FUNCNAME}: don't use this anymore"
+
 	# this doesnt test if the flag is accepted, it tests if the flag
 	# actually -WORKS-. non-multilib gcc will take both -m32 and -m64!
 	# please dont replace this function with test_flag in some future
@@ -534,27 +536,8 @@
 	return 1
 }
 
-# @FUNCTION: has_m32
-# @DESCRIPTION:
-# This doesn't test if the flag is accepted, it tests if the flag actually
-# WORKS. Non-mulilib gcc will take both -m32 and -64. If the flag works return
-# code is 0, else return code is 1.
 has_m32() {
-	# this doesnt test if the flag is accepted, it tests if the flag
-	# actually -WORKS-. non-multilib gcc will take both -m32 and -m64!
-	# please dont replace this function with test_flag in some future
-	# clean-up!
-
-	[ "$(tc-arch)" = "amd64" ] && has_multilib_profile && return 0
-
-	local temp=$(emktemp)
-	echo "int main() { return(0); }" > "${temp}".c
-	MY_CC=$(tc-getCC)
-	${MY_CC/ .*/} -m32 -o "$(emktemp)" "${temp}".c > /dev/null 2>&1
-	local ret=$?
-	rm -f "${temp}".c
-	[[ ${ret} != 1 ]] && return 0
-	return 1
+	die "${FUNCNAME}: don't use this anymore"
 }
 
 # @FUNCTION: replace-sparc64-flags






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-01-14  9:10 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-01-14  9:10 UTC (permalink / raw
  To: gentoo-commits

vapier      12/01/14 09:10:54

  Modified:             flag-o-matic.eclass
  Log:
  unify duplicated lists of variable names and duplicated code blocks, and try to clean up code a bit

Revision  Changes    Path
1.167                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.167&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.167&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.166&r2=1.167

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.166
retrieving revision 1.167
diff -u -r1.166 -r1.167
--- flag-o-matic.eclass	14 Jan 2012 08:22:13 -0000	1.166
+++ flag-o-matic.eclass	14 Jan 2012 09:10:54 -0000	1.167
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.166 2012/01/14 08:22:13 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.167 2012/01/14 09:10:54 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -15,6 +15,11 @@
 
 inherit eutils toolchain-funcs multilib
 
+# Return all the flag variables that our high level funcs operate on.
+all-flag-vars() {
+	echo {C,CPP,CXX,F,FC,LD}FLAGS
+}
+
 # {C,CXX,F,FC}FLAGS that we allow in strip-flags
 # Note: shell globs and character lists are allowed
 setup-allowed-flags() {
@@ -80,20 +85,17 @@
 # Strings removed are matched as globs, so for example
 # '-O*' would remove -O1, -O2 etc.
 _filter-var() {
-	local f x VAR VAL
-	declare -a new
-
-	VAR=$1
+	local f x var=$1 new=()
 	shift
-	eval VAL=\${${VAR}}
-	for f in ${VAL}; do
-		for x in "$@"; do
+
+	for f in ${!var} ; do
+		for x in "$@" ; do
 			# Note this should work with globs like -O*
 			[[ ${f} == ${x} ]] && continue 2
 		done
-		eval new\[\${\#new\[@]}]=\${f}
+		new+=( "${f}" )
 	done
-	eval export ${VAR}=\${new\[*]}
+	eval export ${var}=\""${new[*]}"\"
 }
 
 # @FUNCTION: filter-flags
@@ -103,8 +105,8 @@
 filter-flags() {
 	_filter-hardened "$@"
 	local v
-	for v in C CPP CXX F FC LD ; do
-		_filter-var ${v}FLAGS "$@"
+	for v in $(all-flag-vars) ; do
+		_filter-var ${v} "$@"
 	done
 	return 0
 }
@@ -188,24 +190,21 @@
 # @DESCRIPTION:
 # Replace the <old> flag with <new>.  Accepts shell globs for <old>.
 replace-flags() {
-	[[ $# != 2 ]] \
-		&& echo && eerror "Usage: replace-flags <old flag> <new flag>" \
-		&& die "replace-flags takes 2 arguments, not $#"
+	[[ $# != 2 ]] && die "Usage: replace-flags <old flag> <new flag>"
 
-	local f fset
-	declare -a new_CFLAGS new_CXXFLAGS new_FFLAGS new_FCFLAGS
-
-	for fset in CFLAGS CXXFLAGS FFLAGS FCFLAGS; do
+	local f var new
+	for var in $(all-flag-vars) ; do
 		# Looping over the flags instead of using a global
 		# substitution ensures that we're working with flag atoms.
 		# Otherwise globs like -O* have the potential to wipe out the
 		# list of flags.
-		for f in ${!fset}; do
+		new=()
+		for f in ${!var} ; do
 			# Note this should work with globs like -O*
 			[[ ${f} == ${1} ]] && f=${2}
-			eval new_${fset}\[\${\#new_${fset}\[@]}]=\${f}
+			new+=( "${f}" )
 		done
-		eval export ${fset}=\${new_${fset}\[*]}
+		eval export ${var}=\""${new[*]}"\"
 	done
 
 	return 0
@@ -243,7 +242,12 @@
 # Returns shell true if <flag> is in {C,CXX,F,FC}FLAGS, else returns shell false.  Accepts shell globs.
 is-flagq() {
 	[[ -n $2 ]] && die "Usage: is-flag <flag>"
-	_is_flagq CFLAGS $1 || _is_flagq CXXFLAGS $1 || _is_flagq FFLAGS $1 || _is_flagq FCFLAGS $1
+
+	local var
+	for var in $(all-flag-vars) ; do
+		_is_flagq ${var} "$1" && return 0
+	done
+	return 1
 }
 
 # @FUNCTION: is-flag
@@ -309,77 +313,35 @@
 # @DESCRIPTION:
 # Strip C[XX]FLAGS of everything except known good/safe flags.
 strip-flags() {
-	local x y flag NEW_CFLAGS NEW_CXXFLAGS NEW_FFLAGS NEW_FCFLAGS
+	local x y var
 
 	setup-allowed-flags
 
-	local NEW_CFLAGS=""
-	local NEW_CXXFLAGS=""
-	local NEW_FFLAGS=""
-	local NEW_FCFLAGS=""
-
 	set -f	# disable pathname expansion
 
-	for x in ${CFLAGS}; do
-		for y in ${ALLOWED_FLAGS}; do
-			flag=${x%%=*}
-			if [ "${flag%%${y}}" = "" ] ; then
-				NEW_CFLAGS="${NEW_CFLAGS} ${x}"
-				break
-			fi
-		done
-	done
+	for var in $(all-flag-vars) ; do
+		local new=()
 
-	for x in ${CXXFLAGS}; do
-		for y in ${ALLOWED_FLAGS}; do
-			flag=${x%%=*}
-			if [ "${flag%%${y}}" = "" ] ; then
-				NEW_CXXFLAGS="${NEW_CXXFLAGS} ${x}"
-				break
-			fi
+		for x in ${!var} ; do
+			local flag=${x%%=*}
+			for y in ${ALLOWED_FLAGS} ; do
+				if [[ -z ${flag%%${y}} ]] ; then
+					new+=( "${x}" )
+					break
+				fi
+			done
 		done
-	done
 
-	for x in ${FFLAGS}; do
-		for y in ${ALLOWED_FLAGS}; do
-			flag=${x%%=*}
-			if [ "${flag%%${y}}" = "" ] ; then
-				NEW_FFLAGS="${NEW_FFLAGS} ${x}"
-				break
-			fi
-		done
-	done
+		# In case we filtered out all optimization flags fallback to -O2
+		if _is_flagq ${var} "-O*" && ! _is_flagq new "-O*" ; then
+			new+=( -O2 )
+		fi
 
-	for x in ${FCFLAGS}; do
-		for y in ${ALLOWED_FLAGS}; do
-			flag=${x%%=*}
-			if [ "${flag%%${y}}" = "" ] ; then
-				NEW_FCFLAGS="${NEW_FCFLAGS} ${x}"
-				break
-			fi
-		done
+		eval export ${var}=\""${new[*]}"\"
 	done
 
-	# In case we filtered out all optimization flags fallback to -O2
-	if [ "${CFLAGS/-O}" != "${CFLAGS}" -a "${NEW_CFLAGS/-O}" = "${NEW_CFLAGS}" ]; then
-		NEW_CFLAGS="${NEW_CFLAGS} -O2"
-	fi
-	if [ "${CXXFLAGS/-O}" != "${CXXFLAGS}" -a "${NEW_CXXFLAGS/-O}" = "${NEW_CXXFLAGS}" ]; then
-		NEW_CXXFLAGS="${NEW_CXXFLAGS} -O2"
-	fi
-	if [ "${FFLAGS/-O}" != "${FFLAGS}" -a "${NEW_FFLAGS/-O}" = "${NEW_FFLAGS}" ]; then
-		NEW_FFLAGS="${NEW_FFLAGS} -O2"
-	fi
-	if [ "${FCFLAGS/-O}" != "${FCFLAGS}" -a "${NEW_FCFLAGS/-O}" = "${NEW_FCFLAGS}" ]; then
-		NEW_FCFLAGS="${NEW_FCFLAGS} -O2"
-	fi
-
 	set +f	# re-enable pathname expansion
 
-	export CFLAGS="${NEW_CFLAGS}"
-	export CXXFLAGS="${NEW_CXXFLAGS}"
-	export FFLAGS="${NEW_FFLAGS}"
-	export FCFLAGS="${NEW_FCFLAGS}"
 	return 0
 }
 
@@ -497,18 +459,20 @@
 # @DESCRIPTION:
 # Find and echo the value for a particular flag.  Accepts shell globs.
 get-flag() {
-	local f findflag="$1"
+	local f var findflag="$1"
 
 	# this code looks a little flaky but seems to work for
 	# everything we want ...
 	# for example, if CFLAGS="-march=i686":
 	# `get-flag -march` == "-march=i686"
 	# `get-flag march` == "i686"
-	for f in ${CFLAGS} ${CXXFLAGS} ${FFLAGS} ${FCFLAGS} ; do
-		if [ "${f/${findflag}}" != "${f}" ] ; then
-			printf "%s\n" "${f/-${findflag}=}"
-			return 0
-		fi
+	for var in $(all-flag-vars) ; do
+		for f in ${!var} ; do
+			if [ "${f/${findflag}}" != "${f}" ] ; then
+				printf "%s\n" "${f/-${findflag}=}"
+				return 0
+			fi
+		done
 	done
 	return 1
 }






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-01-16 20:03 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-01-16 20:03 UTC (permalink / raw
  To: gentoo-commits

vapier      12/01/16 20:03:32

  Modified:             flag-o-matic.eclass
  Log:
  quote single flag arg to test-flag-PROG since we are only testing one flag, and we want to handle any weirdness in that flag (such as spaces) #399055

Revision  Changes    Path
1.168                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.168&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.168&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.167&r2=1.168

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.167
retrieving revision 1.168
diff -u -r1.167 -r1.168
--- flag-o-matic.eclass	14 Jan 2012 09:10:54 -0000	1.167
+++ flag-o-matic.eclass	16 Jan 2012 20:03:32 -0000	1.168
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.167 2012/01/14 09:10:54 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.168 2012/01/16 20:03:32 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -347,13 +347,13 @@
 
 test-flag-PROG() {
 	local comp=$1
-	local flags="$2"
+	local flag=$2
 
-	[[ -z ${comp} || -z ${flags} ]] && return 1
+	[[ -z ${comp} || -z ${flag} ]] && return 1
 
 	# use -c so we can test the assembler as well
 	local PROG=$(tc-get${comp})
-	${PROG} ${flags} -c -o /dev/null -xc /dev/null \
+	${PROG} "${flag}" -c -o /dev/null -xc /dev/null \
 		> /dev/null 2>&1
 }
 






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-02-26 12:09 Anthony G. Basile (blueness)
  0 siblings, 0 replies; 64+ messages in thread
From: Anthony G. Basile (blueness) @ 2012-02-26 12:09 UTC (permalink / raw
  To: gentoo-commits

blueness    12/02/26 12:09:45

  Modified:             flag-o-matic.eclass
  Log:
  Adds CCASFLAGS to list of flags which are filtered

Revision  Changes    Path
1.169                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.169&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.169&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.168&r2=1.169

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.168
retrieving revision 1.169
diff -u -r1.168 -r1.169
--- flag-o-matic.eclass	16 Jan 2012 20:03:32 -0000	1.168
+++ flag-o-matic.eclass	26 Feb 2012 12:09:44 -0000	1.169
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.168 2012/01/16 20:03:32 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.169 2012/02/26 12:09:44 blueness Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -17,7 +17,7 @@
 
 # Return all the flag variables that our high level funcs operate on.
 all-flag-vars() {
-	echo {C,CPP,CXX,F,FC,LD}FLAGS
+	echo {C,CPP,CXX,CCAS,F,FC,LD}FLAGS
 }
 
 # {C,CXX,F,FC}FLAGS that we allow in strip-flags
@@ -101,7 +101,7 @@
 # @FUNCTION: filter-flags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Remove particular <flags> from {C,CPP,CXX,F,FC,LD}FLAGS.  Accepts shell globs.
+# Remove particular <flags> from {C,CPP,CXX,CCAS,F,FC,LD}FLAGS.  Accepts shell globs.
 filter-flags() {
 	_filter-hardened "$@"
 	local v






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-05-26  2:55 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-05-26  2:55 UTC (permalink / raw
  To: gentoo-commits

vapier      12/05/26 02:55:02

  Modified:             flag-o-matic.eclass
  Log:
  warn when people add preprocessor/linker flags with `append-flags`

Revision  Changes    Path
1.170                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.170&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.170&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.169&r2=1.170

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.169
retrieving revision 1.170
diff -u -r1.169 -r1.170
--- flag-o-matic.eclass	26 Feb 2012 12:09:44 -0000	1.169
+++ flag-o-matic.eclass	26 May 2012 02:55:02 -0000	1.170
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.169 2012/02/26 12:09:44 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.170 2012/05/26 02:55:02 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -179,6 +179,10 @@
 # Add extra <flags> to your current {C,CXX,F,FC}FLAGS.
 append-flags() {
 	[[ $# -eq 0 ]] && return 0
+	case " $* " in
+	*' '-[DIU]*) eqawarn 'please use append-cppflags for preprocessor flags' ;;
+	*' '-L*)     eqawarn 'please use append-ldflags for linker flags' ;;
+	esac
 	append-cflags "$@"
 	append-cxxflags "$@"
 	append-fflags "$@"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-05-31  0:24 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-05-31  0:24 UTC (permalink / raw
  To: gentoo-commits

vapier      12/05/31 00:24:47

  Modified:             flag-o-matic.eclass
  Log:
  also warn on -Wl, flags passed to append-flags

Revision  Changes    Path
1.172                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.172&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.172&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.171&r2=1.172

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.171
retrieving revision 1.172
diff -u -r1.171 -r1.172
--- flag-o-matic.eclass	30 May 2012 07:59:51 -0000	1.171
+++ flag-o-matic.eclass	31 May 2012 00:24:47 -0000	1.172
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.171 2012/05/30 07:59:51 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.172 2012/05/31 00:24:47 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -206,7 +206,8 @@
 	[[ $# -eq 0 ]] && return 0
 	case " $* " in
 	*' '-[DIU]*) eqawarn 'please use append-cppflags for preprocessor flags' ;;
-	*' '-L*)     eqawarn 'please use append-ldflags for linker flags' ;;
+	*' '-L*|\
+	*' '-Wl,*')  eqawarn 'please use append-ldflags for linker flags' ;;
 	esac
 	append-cflags "$@"
 	append-cxxflags "$@"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-05-31  0:29 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-05-31  0:29 UTC (permalink / raw
  To: gentoo-commits

vapier      12/05/31 00:29:06

  Modified:             flag-o-matic.eclass
  Log:
  fix moronic syntax error in previous commit

Revision  Changes    Path
1.173                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.173&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.173&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.172&r2=1.173

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.172
retrieving revision 1.173
diff -u -r1.172 -r1.173
--- flag-o-matic.eclass	31 May 2012 00:24:47 -0000	1.172
+++ flag-o-matic.eclass	31 May 2012 00:29:06 -0000	1.173
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.172 2012/05/31 00:24:47 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.173 2012/05/31 00:29:06 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -207,7 +207,7 @@
 	case " $* " in
 	*' '-[DIU]*) eqawarn 'please use append-cppflags for preprocessor flags' ;;
 	*' '-L*|\
-	*' '-Wl,*')  eqawarn 'please use append-ldflags for linker flags' ;;
+	*' '-Wl,*)  eqawarn 'please use append-ldflags for linker flags' ;;
 	esac
 	append-cflags "$@"
 	append-cxxflags "$@"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-06-23 22:21 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-06-23 22:21 UTC (permalink / raw
  To: gentoo-commits

vapier      12/06/23 22:21:50

  Modified:             flag-o-matic.eclass
  Log:
  use eqawarn rather than ewarn for append-ldflags checking #423159 by Pacho Ramos

Revision  Changes    Path
1.177                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.177&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.177&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.176&r2=1.177

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.176
retrieving revision 1.177
diff -u -r1.176 -r1.177
--- flag-o-matic.eclass	18 Jun 2012 06:45:28 -0000	1.176
+++ flag-o-matic.eclass	23 Jun 2012 22:21:50 -0000	1.177
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.176 2012/06/18 06:45:28 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.177 2012/06/23 22:21:50 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -197,7 +197,7 @@
 	local flag
 	for flag in "$@"; do
 		[[ ${flag} == -l* ]] && \
-			ewarn "Appending a library link instruction (${flag}); libraries to link to should not be passed through LDFLAGS"
+			eqawarn "Appending a library link instruction (${flag}); libraries to link to should not be passed through LDFLAGS"
 	done
 
 	export LDFLAGS="${LDFLAGS} $*"






^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-10-30 20:20 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-10-30 20:20 UTC (permalink / raw
  To: gentoo-commits

vapier      12/10/30 20:20:37

  Modified:             flag-o-matic.eclass
  Log:
  strip-flags: do not add -O2 if user has -O #440306 by Denis M

Revision  Changes    Path
1.178                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.178&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.178&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.177&r2=1.178

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.177
retrieving revision 1.178
diff -u -r1.177 -r1.178
--- flag-o-matic.eclass	23 Jun 2012 22:21:50 -0000	1.177
+++ flag-o-matic.eclass	30 Oct 2012 20:20:37 -0000	1.178
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.177 2012/06/23 22:21:50 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.178 2012/10/30 20:20:37 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -370,7 +370,7 @@
 		done
 
 		# In case we filtered out all optimization flags fallback to -O2
-		if _is_flagq ${var} "-O*" && ! _is_flagq new "-O*" ; then
+		if _is_flagq ${var} "-O*" && ! (_is_flagq new "-O*" || _is_flagq new -O) ; then
 			new+=( -O2 )
 		fi
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-10-30 20:51 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-10-30 20:51 UTC (permalink / raw
  To: gentoo-commits

vapier      12/10/30 20:51:44

  Modified:             flag-o-matic.eclass
  Log:
  strip-flags: revert previous commit as it was unnecessary; fix _is_flagq to handle arrays #440306 by Mr. Bones.

Revision  Changes    Path
1.179                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.179&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.179&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.178&r2=1.179

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.178
retrieving revision 1.179
diff -u -r1.178 -r1.179
--- flag-o-matic.eclass	30 Oct 2012 20:20:37 -0000	1.178
+++ flag-o-matic.eclass	30 Oct 2012 20:51:44 -0000	1.179
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.178 2012/10/30 20:20:37 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.179 2012/10/30 20:51:44 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -265,8 +265,9 @@
 }
 
 _is_flagq() {
-	local x
-	for x in ${!1} ; do
+	local x var
+	eval var=\""\${$1[*]}"\"
+	for x in ${var} ; do
 		[[ ${x} == $2 ]] && return 0
 	done
 	return 1
@@ -370,7 +371,7 @@
 		done
 
 		# In case we filtered out all optimization flags fallback to -O2
-		if _is_flagq ${var} "-O*" && ! (_is_flagq new "-O*" || _is_flagq new -O) ; then
+		if _is_flagq ${var} "-O*" && ! _is_flagq new "-O*" ; then
 			new+=( -O2 )
 		fi
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-11-11  7:00 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-11-11  7:00 UTC (permalink / raw
  To: gentoo-commits

vapier      12/11/11 07:00:01

  Modified:             flag-o-matic.eclass
  Log:
  raw-ldflags: throw away flags that do not start with -Wl, #441808

Revision  Changes    Path
1.180                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.180&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.180&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.179&r2=1.180

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.179
retrieving revision 1.180
diff -u -r1.179 -r1.180
--- flag-o-matic.eclass	30 Oct 2012 20:51:44 -0000	1.179
+++ flag-o-matic.eclass	11 Nov 2012 07:00:01 -0000	1.180
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.179 2012/10/30 20:51:44 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.180 2012/11/11 07:00:01 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -599,8 +599,14 @@
 	[[ -z ${input} ]] && input=${LDFLAGS}
 	set --
 	for x in ${input} ; do
-		x=${x#-Wl,}
-		set -- "$@" ${x//,/ }
+		case ${x} in
+		-Wl*,)
+			x=${x#-Wl,}
+			set -- "$@" ${x//,/ }
+			;;
+		*)	# Assume it's a compiler driver flag, so throw it away #441808
+			;;
+		esac
 	done
 	echo "$@"
 }





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-11-11 20:00 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-11-11 20:00 UTC (permalink / raw
  To: gentoo-commits

vapier      12/11/11 20:00:57

  Modified:             flag-o-matic.eclass
  Log:
  raw-ldflags: fix typo in previous commit #441808#10

Revision  Changes    Path
1.181                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.181&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.181&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.180&r2=1.181

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.180
retrieving revision 1.181
diff -u -r1.180 -r1.181
--- flag-o-matic.eclass	11 Nov 2012 07:00:01 -0000	1.180
+++ flag-o-matic.eclass	11 Nov 2012 20:00:57 -0000	1.181
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.180 2012/11/11 07:00:01 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.181 2012/11/11 20:00:57 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -600,7 +600,7 @@
 	set --
 	for x in ${input} ; do
 		case ${x} in
-		-Wl*,)
+		-Wl,*)
 			x=${x#-Wl,}
 			set -- "$@" ${x//,/ }
 			;;





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-11-18  8:27 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-11-18  8:27 UTC (permalink / raw
  To: gentoo-commits

vapier      12/11/18 08:27:01

  Modified:             flag-o-matic.eclass
  Log:
  test-flags: set the lang according to the compiler we are using rather than always testing the C frontend so that we can handle language-specific flags correctly #439914 by Alphat-PC

Revision  Changes    Path
1.182                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.182&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.182&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.181&r2=1.182

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.181
retrieving revision 1.182
diff -u -r1.181 -r1.182
--- flag-o-matic.eclass	11 Nov 2012 20:00:57 -0000	1.181
+++ flag-o-matic.eclass	18 Nov 2012 08:27:00 -0000	1.182
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.181 2012/11/11 20:00:57 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.182 2012/11/18 08:27:00 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -385,13 +385,14 @@
 
 test-flag-PROG() {
 	local comp=$1
-	local flag=$2
+	local lang=$2
+	local flag=$3
 
 	[[ -z ${comp} || -z ${flag} ]] && return 1
 
 	# use -c so we can test the assembler as well
 	local PROG=$(tc-get${comp})
-	${PROG} "${flag}" -c -o /dev/null -xc /dev/null \
+	${PROG} "${flag}" -c -o /dev/null -x${lang} /dev/null \
 		> /dev/null 2>&1
 }
 
@@ -399,25 +400,25 @@
 # @USAGE: <flag>
 # @DESCRIPTION:
 # Returns shell true if <flag> is supported by the C compiler, else returns shell false.
-test-flag-CC() { test-flag-PROG "CC" "$1"; }
+test-flag-CC() { test-flag-PROG "CC" c "$1"; }
 
 # @FUNCTION: test-flag-CXX
 # @USAGE: <flag>
 # @DESCRIPTION:
 # Returns shell true if <flag> is supported by the C++ compiler, else returns shell false.
-test-flag-CXX() { test-flag-PROG "CXX" "$1"; }
+test-flag-CXX() { test-flag-PROG "CXX" c++ "$1"; }
 
 # @FUNCTION: test-flag-F77
 # @USAGE: <flag>
 # @DESCRIPTION:
 # Returns shell true if <flag> is supported by the Fortran 77 compiler, else returns shell false.
-test-flag-F77() { test-flag-PROG "F77" "$1"; }
+test-flag-F77() { test-flag-PROG "F77" f77 "$1"; }
 
 # @FUNCTION: test-flag-FC
 # @USAGE: <flag>
 # @DESCRIPTION:
 # Returns shell true if <flag> is supported by the Fortran 90 compiler, else returns shell false.
-test-flag-FC() { test-flag-PROG "FC" "$1"; }
+test-flag-FC() { test-flag-PROG "FC" f95 "$1"; }
 
 test-flags-PROG() {
 	local comp=$1





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-11-18  8:29 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-11-18  8:29 UTC (permalink / raw
  To: gentoo-commits

vapier      12/11/18 08:29:17

  Modified:             flag-o-matic.eclass
  Log:
  test-flags-PROG: use arrays to simplify code a bit

Revision  Changes    Path
1.183                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.183&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.183&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.182&r2=1.183

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.182
retrieving revision 1.183
diff -u -r1.182 -r1.183
--- flag-o-matic.eclass	18 Nov 2012 08:27:00 -0000	1.182
+++ flag-o-matic.eclass	18 Nov 2012 08:29:17 -0000	1.183
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.182 2012/11/18 08:27:00 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.183 2012/11/18 08:29:17 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -422,21 +422,21 @@
 
 test-flags-PROG() {
 	local comp=$1
-	local flags
+	local flags=()
 	local x
 
 	shift
 
 	[[ -z ${comp} ]] && return 1
 
-	for x in "$@" ; do
-		test-flag-${comp} "${x}" && flags="${flags}${flags:+ }${x}"
+	for x ; do
+		test-flag-${comp} "${x}" && flags+=( "${x}" )
 	done
 
-	echo "${flags}"
+	echo "${flags[*]}"
 
 	# Just bail if we dont have any flags
-	[[ -n ${flags} ]]
+	[[ ${#flags[@]} -gt 0 ]]
 }
 
 # @FUNCTION: test-flags-CC





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-11-29 23:27 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-11-29 23:27 UTC (permalink / raw
  To: gentoo-commits

vapier      12/11/29 23:27:33

  Modified:             flag-o-matic.eclass
  Log:
  test-flag-PROG: read from stdin rather than directly from /dev/null as some compiler driver versions cannot handle that #443778

Revision  Changes    Path
1.184                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.184&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.184&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.183&r2=1.184

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.183
retrieving revision 1.184
diff -u -r1.183 -r1.184
--- flag-o-matic.eclass	18 Nov 2012 08:29:17 -0000	1.183
+++ flag-o-matic.eclass	29 Nov 2012 23:27:32 -0000	1.184
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.183 2012/11/18 08:29:17 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.184 2012/11/29 23:27:32 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -392,7 +392,7 @@
 
 	# use -c so we can test the assembler as well
 	local PROG=$(tc-get${comp})
-	${PROG} "${flag}" -c -o /dev/null -x${lang} /dev/null \
+	${PROG} "${flag}" -c -o /dev/null -x${lang} - < /dev/null \
 		> /dev/null 2>&1
 }
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2012-12-03 21:20 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2012-12-03 21:20 UTC (permalink / raw
  To: gentoo-commits

vapier      12/12/03 21:20:54

  Modified:             flag-o-matic.eclass
  Log:
  strip-flags: tweak -mfloat-abi in ALLOWED_FLAGS setup #445718 by Rick Farina

Revision  Changes    Path
1.185                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.185&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.185&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.184&r2=1.185

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.184
retrieving revision 1.185
diff -u -r1.184 -r1.185
--- flag-o-matic.eclass	29 Nov 2012 23:27:32 -0000	1.184
+++ flag-o-matic.eclass	3 Dec 2012 21:20:54 -0000	1.185
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.184 2012/11/29 23:27:32 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.185 2012/12/03 21:20:54 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -45,7 +45,7 @@
 		-mtls-direct-seg-refs -mno-tls-direct-seg-refs -mflat -mno-flat \
 		-mno-faster-structs -mfaster-structs -m32 -m64 -mx32 -mabi \
 		-mlittle-endian -mbig-endian -EL -EB -fPIC -mlive-g0 -mcmodel \
-		-mstack-bias -mno-stack-bias -msecure-plt -m*-toc -mfloat-abi=* \
+		-mstack-bias -mno-stack-bias -msecure-plt -m*-toc -mfloat-abi \
 		-D* -U*"
 
 	# 4.5





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2013-01-12 14:32 Justin Lecher (jlec)
  0 siblings, 0 replies; 64+ messages in thread
From: Justin Lecher (jlec) @ 2013-01-12 14:32 UTC (permalink / raw
  To: gentoo-commits

jlec        13/01/12 14:32:31

  Modified:             flag-o-matic.eclass
  Log:
  Don't check for  twice, but check for redirect support, #445244; thanks Andrey Hippo for the patch

Revision  Changes    Path
1.187                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.187&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.187&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.186&r2=1.187

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.186
retrieving revision 1.187
diff -u -r1.186 -r1.187
--- flag-o-matic.eclass	20 Dec 2012 21:01:50 -0000	1.186
+++ flag-o-matic.eclass	12 Jan 2013 14:32:31 -0000	1.187
@@ -1,6 +1,6 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.186 2012/12/20 21:01:50 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.187 2013/01/12 14:32:31 jlec Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -392,12 +392,11 @@
 
 	# use -c so we can test the assembler as well
 	local PROG=$(tc-get${comp})
-	if $( ${PROG} "${flag}" -c -o /dev/null -x${lang} - < /dev/null > /dev/null 2>&1 ); then
+	if ${PROG} -c -o /dev/null -x${lang} - < /dev/null > /dev/null 2>&1 ; then
 		${PROG} "${flag}" -c -o /dev/null -x${lang} - < /dev/null \
 			> /dev/null 2>&1
 	else
-		${PROG} "${flag}" -c -o /dev/null /dev/null \
-			> /dev/null 2>&1
+		${PROG} "${flag}" -c -o /dev/null /dev/null > /dev/null 2>&1
 	fi
 }
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2013-09-05  5:28 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2013-09-05  5:28 UTC (permalink / raw
  To: gentoo-commits

vapier      13/09/05 05:28:01

  Modified:             flag-o-matic.eclass
  Log:
  filter-mfpmath: handle "both" and "387+sse" forms #349172 by Kacper Kowalik

Revision  Changes    Path
1.188                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.188&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.188&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.187&r2=1.188

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.187
retrieving revision 1.188
diff -u -r1.187 -r1.188
--- flag-o-matic.eclass	12 Jan 2013 14:32:31 -0000	1.187
+++ flag-o-matic.eclass	5 Sep 2013 05:28:01 -0000	1.188
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.187 2013/01/12 14:32:31 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.188 2013/09/05 05:28:01 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -325,7 +325,9 @@
 	orig_mfpmath=$(get-flag -mfpmath)
 	# get the value of the current -mfpmath flag
 	new_math=$(get-flag mfpmath)
-	new_math=" ${new_math//,/ } "
+	# convert "both" to something we can filter
+	new_math=${new_math/both/387,sse}
+	new_math=" ${new_math//[,+]/ } "
 	# figure out which math values are to be removed
 	prune_math=""
 	for prune_math in "$@" ; do





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2013-09-30  6:39 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2013-09-30  6:39 UTC (permalink / raw
  To: gentoo-commits

vapier      13/09/30 06:39:56

  Modified:             flag-o-matic.eclass
  Log:
  append-*flags: revert to old behavior where we always append the flags specified rather than doing testing on them; it is not feasible to handle flags that have spaces in them #417047

Revision  Changes    Path
1.189                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.189&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.189&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.188&r2=1.189

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.188
retrieving revision 1.189
diff -u -r1.188 -r1.189
--- flag-o-matic.eclass	5 Sep 2013 05:28:01 -0000	1.188
+++ flag-o-matic.eclass	30 Sep 2013 06:39:56 -0000	1.189
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.188 2013/09/05 05:28:01 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.189 2013/09/30 06:39:56 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -144,38 +144,53 @@
 # Add extra <flags> to the current CPPFLAGS.
 append-cppflags() {
 	[[ $# -eq 0 ]] && return 0
-	export CPPFLAGS="${CPPFLAGS} $*"
+	export CPPFLAGS+=" $*"
 	return 0
 }
 
 # @FUNCTION: append-cflags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Add extra <flags> to the current CFLAGS.
+# Add extra <flags> to the current CFLAGS.  If a flag might not be supported
+# with different compilers (or versions), then use test-flags-CC like so:
+# @CODE
+# append-cflags $(test-flags-CC -funky-flag)
+# @CODE
 append-cflags() {
 	[[ $# -eq 0 ]] && return 0
-	export CFLAGS=$(test-flags-CC ${CFLAGS} "$@")
+	# Do not do automatic flag testing ourselves. #417047
+	export CFLAGS+=" $*"
 	return 0
 }
 
 # @FUNCTION: append-cxxflags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Add extra <flags> to the current CXXFLAGS.
+# Add extra <flags> to the current CXXFLAGS.  If a flag might not be supported
+# with different compilers (or versions), then use test-flags-CXX like so:
+# @CODE
+# append-cxxflags $(test-flags-CXX -funky-flag)
+# @CODE
 append-cxxflags() {
 	[[ $# -eq 0 ]] && return 0
-	export CXXFLAGS=$(test-flags-CXX ${CXXFLAGS} "$@")
+	# Do not do automatic flag testing ourselves. #417047
+	export CXXFLAGS+=" $*"
 	return 0
 }
 
 # @FUNCTION: append-fflags
 # @USAGE: <flags>
 # @DESCRIPTION:
-# Add extra <flags> to the current {F,FC}FLAGS.
+# Add extra <flags> to the current {F,FC}FLAGS.  If a flag might not be supported
+# with different compilers (or versions), then use test-flags-F77 like so:
+# @CODE
+# append-fflags $(test-flags-F77 -funky-flag)
+# @CODE
 append-fflags() {
 	[[ $# -eq 0 ]] && return 0
-	export FFLAGS=$(test-flags-F77 ${FFLAGS} "$@")
-	export FCFLAGS=$(test-flags-FC ${FCFLAGS} "$@")
+	# Do not do automatic flag testing ourselves. #417047
+	export FFLAGS+=" $*"
+	export FCFLAGS+=" $*"
 	return 0
 }
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2013-10-12 19:50 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2013-10-12 19:50 UTC (permalink / raw
  To: gentoo-commits

vapier      13/10/12 19:50:02

  Modified:             flag-o-matic.eclass
  Log:
  strip-flags: log changes when they happen for user to see #487104

Revision  Changes    Path
1.190                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.190&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.190&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.189&r2=1.190

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.189
retrieving revision 1.190
diff -u -r1.189 -r1.190
--- flag-o-matic.eclass	30 Sep 2013 06:39:56 -0000	1.189
+++ flag-o-matic.eclass	12 Oct 2013 19:50:02 -0000	1.190
@@ -1,6 +1,6 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.189 2013/09/30 06:39:56 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.190 2013/10/12 19:50:02 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -392,6 +392,9 @@
 			new+=( -O2 )
 		fi
 
+		if [[ ${!var} != "${new[*]}" ]] ; then
+			einfo "strip-flags: ${var}: changed '${!var}' to '${new[*]}'"
+		fi
 		eval export ${var}=\""${new[*]}"\"
 	done
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2014-02-02 22:26 Thomas Sachau (tommy)
  0 siblings, 0 replies; 64+ messages in thread
From: Thomas Sachau (tommy) @ 2014-02-02 22:26 UTC (permalink / raw
  To: gentoo-commits

tommy       14/02/02 22:26:13

  Modified:             flag-o-matic.eclass
  Log:
  Add missing leading spaces for ALLOWED_FLAGS for 4.8 and 4.9

Revision  Changes    Path
1.197                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.197&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.197&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.196&r2=1.197

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.196
retrieving revision 1.197
diff -u -r1.196 -r1.197
--- flag-o-matic.eclass	1 Feb 2014 18:52:32 -0000	1.196
+++ flag-o-matic.eclass	2 Feb 2014 22:26:13 -0000	1.197
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.196 2014/02/01 18:52:32 dirtyepic Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.197 2014/02/02 22:26:13 tommy Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -56,9 +56,9 @@
 	# 4.7
 	ALLOWED_FLAGS+=" -mno-avx2 -mno-bmi2 -mno-fma -mno-lzcnt"
 	# 4.8
-	ALLOWED_FLAGS+="-mno-fxsr -mno-rtm -mno-xsave -mno-xsaveopt"
+	ALLOWED_FLAGS+=" -mno-fxsr -mno-rtm -mno-xsave -mno-xsaveopt"
 	# 4.9
-	ALLOWED_FLAGS+="-mno-avx512cd -mno-avx512er -mno-avx512f -mno-avx512pf -mno-sha"
+	ALLOWED_FLAGS+=" -mno-avx512cd -mno-avx512er -mno-avx512f -mno-avx512pf -mno-sha"
 
 	# CPPFLAGS and LDFLAGS
 	ALLOWED_FLAGS+=" -I* -L* -R* -Wl,*"





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2014-08-11  0:36 Joshua Kinard (kumba)
  0 siblings, 0 replies; 64+ messages in thread
From: Joshua Kinard (kumba) @ 2014-08-11  0:36 UTC (permalink / raw
  To: gentoo-commits

kumba       14/08/11 00:36:05

  Modified:             flag-o-matic.eclass
  Log:
  Added -mfix-r10000/-mno-fix-r10000 to ALLOWED_FLAGS for MIPS.

Revision  Changes    Path
1.202                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.202&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.202&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.201&r2=1.202

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.201
retrieving revision 1.202
diff -u -r1.201 -r1.202
--- flag-o-matic.eclass	11 Jul 2014 08:21:58 -0000	1.201
+++ flag-o-matic.eclass	11 Aug 2014 00:36:05 -0000	1.202
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.201 2014/07/11 08:21:58 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.202 2014/08/11 00:36:05 kumba Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -47,7 +47,7 @@
 		-mno-faster-structs -mfaster-structs -m32 -m64 -mx32 -mabi \
 		-mlittle-endian -mbig-endian -EL -EB -fPIC -mlive-g0 -mcmodel \
 		-mstack-bias -mno-stack-bias -msecure-plt -m*-toc -mfloat-abi \
-		-D* -U*"
+		-mfix-r10000 -mno-fix-r10000 -D* -U*"
 
 	# 4.5
 	ALLOWED_FLAGS+=" -mno-fma4 -mno-movbe -mno-xop -mno-lwp"





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2014-11-01  3:45 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2014-11-01  3:45 UTC (permalink / raw
  To: gentoo-commits

vapier      14/11/01 03:45:53

  Modified:             flag-o-matic.eclass
  Log:
  add -nopie to the allow flag list #527214

Revision  Changes    Path
1.203                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.203&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.203&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.202&r2=1.203

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.202
retrieving revision 1.203
diff -u -r1.202 -r1.203
--- flag-o-matic.eclass	11 Aug 2014 00:36:05 -0000	1.202
+++ flag-o-matic.eclass	1 Nov 2014 03:45:53 -0000	1.203
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.202 2014/08/11 00:36:05 kumba Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.203 2014/11/01 03:45:53 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -27,7 +27,7 @@
 	ALLOWED_FLAGS+=" -O -O1 -O2 -Os -Og -mcpu -march -mtune"
 	ALLOWED_FLAGS+=" -fstack-protector*"
 	ALLOWED_FLAGS+=" -fbounds-checking -fno-strict-overflow"
-	ALLOWED_FLAGS+=" -fno-PIE -fno-pie -fno-unit-at-a-time"
+	ALLOWED_FLAGS+=" -fno-PIE -fno-pie -nopie -fno-unit-at-a-time"
 	ALLOWED_FLAGS+=" -g -g[0-9] -ggdb -ggdb[0-9] -gdwarf-* gstabs -gstabs+"
 	ALLOWED_FLAGS+=" -fno-ident -fpermissive -frecord-gcc-switches"
 	ALLOWED_FLAGS+=" -fdiagnostics*"





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2014-12-31  8:26 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2014-12-31  8:26 UTC (permalink / raw
  To: gentoo-commits

vapier      14/12/31 08:26:48

  Modified:             flag-o-matic.eclass
  Log:
  add -fsanitize=* to the allowed flag list #530070 by Sebastian Pipping

Revision  Changes    Path
1.204                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.204&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.204&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.203&r2=1.204

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.203
retrieving revision 1.204
diff -u -r1.203 -r1.204
--- flag-o-matic.eclass	1 Nov 2014 03:45:53 -0000	1.203
+++ flag-o-matic.eclass	31 Dec 2014 08:26:48 -0000	1.204
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.203 2014/11/01 03:45:53 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.204 2014/12/31 08:26:48 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -25,7 +25,7 @@
 setup-allowed-flags() {
 	ALLOWED_FLAGS="-pipe"
 	ALLOWED_FLAGS+=" -O -O1 -O2 -Os -Og -mcpu -march -mtune"
-	ALLOWED_FLAGS+=" -fstack-protector*"
+	ALLOWED_FLAGS+=" -fstack-protector* -fsanitize=*"
 	ALLOWED_FLAGS+=" -fbounds-checking -fno-strict-overflow"
 	ALLOWED_FLAGS+=" -fno-PIE -fno-pie -nopie -fno-unit-at-a-time"
 	ALLOWED_FLAGS+=" -g -g[0-9] -ggdb -ggdb[0-9] -gdwarf-* gstabs -gstabs+"





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2015-05-06  7:04 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2015-05-06  7:04 UTC (permalink / raw
  To: gentoo-commits

vapier      15/05/06 07:04:53

  Modified:             flag-o-matic.eclass
  Log:
  make flag testing work for clang too crbug.com/474652

Revision  Changes    Path
1.205                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.205&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.205&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.204&r2=1.205

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.204
retrieving revision 1.205
diff -u -r1.204 -r1.205
--- flag-o-matic.eclass	31 Dec 2014 08:26:48 -0000	1.204
+++ flag-o-matic.eclass	6 May 2015 07:04:53 -0000	1.205
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.204 2014/12/31 08:26:48 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.205 2015/05/06 07:04:53 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -415,13 +415,18 @@
 
 	[[ -z ${comp} || -z ${flag} ]] && return 1
 
-	# use -c so we can test the assembler as well
-	local PROG=$(tc-get${comp})
-	if ${PROG} -c -o /dev/null -x${lang} - < /dev/null > /dev/null 2>&1 ; then
-		${PROG} "${flag}" -c -o /dev/null -x${lang} - < /dev/null \
-			> /dev/null 2>&1
+	local cmdline=(
+		$(tc-get${comp})
+		# Clang will warn about unknown gcc flags but exit 0.
+		# Need -Werror to force it to exit non-zero.
+		-Werror
+		# Use -c so we can test the assembler as well.
+		-c -o /dev/null
+	)
+	if "${cmdline[@]}" -x${lang} - </dev/null >/dev/null 2>&1 ; then
+		"${cmdline[@]}" "${flag}" -x${lang} - </dev/null >/dev/null 2>&1
 	else
-		${PROG} "${flag}" -c -o /dev/null /dev/null > /dev/null 2>&1
+		"${cmdline[@]}" "${flag}" -c -o /dev/null /dev/null >/dev/null 2>&1
 	fi
 }
 





^ permalink raw reply	[flat|nested] 64+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass
@ 2015-05-24  7:05 Mike Frysinger (vapier)
  0 siblings, 0 replies; 64+ messages in thread
From: Mike Frysinger (vapier) @ 2015-05-24  7:05 UTC (permalink / raw
  To: gentoo-commits

vapier      15/05/24 07:05:30

  Modified:             flag-o-matic.eclass
  Log:
  add newer -fbounds-check form to the allowed flag list #530068 by Sebastian Pipping

Revision  Changes    Path
1.206                eclass/flag-o-matic.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.206&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?rev=1.206&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/flag-o-matic.eclass?r1=1.205&r2=1.206

Index: flag-o-matic.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -r1.205 -r1.206
--- flag-o-matic.eclass	6 May 2015 07:04:53 -0000	1.205
+++ flag-o-matic.eclass	24 May 2015 07:05:30 -0000	1.206
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.205 2015/05/06 07:04:53 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/flag-o-matic.eclass,v 1.206 2015/05/24 07:05:30 vapier Exp $
 
 # @ECLASS: flag-o-matic.eclass
 # @MAINTAINER:
@@ -26,7 +26,7 @@
 	ALLOWED_FLAGS="-pipe"
 	ALLOWED_FLAGS+=" -O -O1 -O2 -Os -Og -mcpu -march -mtune"
 	ALLOWED_FLAGS+=" -fstack-protector* -fsanitize=*"
-	ALLOWED_FLAGS+=" -fbounds-checking -fno-strict-overflow"
+	ALLOWED_FLAGS+=" -fbounds-check -fbounds-checking -fno-strict-overflow"
 	ALLOWED_FLAGS+=" -fno-PIE -fno-pie -nopie -fno-unit-at-a-time"
 	ALLOWED_FLAGS+=" -g -g[0-9] -ggdb -ggdb[0-9] -gdwarf-* gstabs -gstabs+"
 	ALLOWED_FLAGS+=" -fno-ident -fpermissive -frecord-gcc-switches"
@@ -35,7 +35,7 @@
 
 	# allow a bunch of flags that negate features / control ABI
 	ALLOWED_FLAGS+=" -fno-stack-protector* -fabi-version=* \
-		-fno-strict-aliasing -fno-bounds-checking -fstrict-overflow \
+		-fno-strict-aliasing -fno-bounds-check -fno-bounds-checking -fstrict-overflow \
 		-fno-omit-frame-pointer -fno-builtin*"
 	ALLOWED_FLAGS+=" -mregparm -mno-app-regs -mapp-regs -mno-mmx -mno-sse \
 		-mno-sse2 -mno-sse3 -mno-ssse3 -mno-sse4 -mno-sse4.1 -mno-sse4.2 \





^ permalink raw reply	[flat|nested] 64+ messages in thread

end of thread, other threads:[~2015-05-24  7:05 UTC | newest]

Thread overview: 64+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-16 22:43 [gentoo-commits] gentoo-x86 commit in eclass: flag-o-matic.eclass Mike Frysinger (vapier)
  -- strict thread matches above, loose matches on Subject: below --
2008-02-18 18:20 Sven Wegener (swegener)
2008-06-07 16:42 Diego Petteno (flameeyes)
2008-07-03  5:30 Donnie Berkholz (dberkholz)
2008-09-14 19:43 Ryan Hill (dirtyepic)
2008-11-03  5:52 Mike Frysinger (vapier)
2008-12-21 21:40 Ned Ludd (solar)
2009-01-04 17:22 Mike Frysinger (vapier)
2009-01-08  8:12 Gordon Malm (gengor)
2009-01-08 11:29 Gordon Malm (gengor)
2009-01-21  0:42 Gordon Malm (gengor)
2009-04-04 17:57 Fabian Groffen (grobian)
2009-04-05  8:22 Fabian Groffen (grobian)
2009-05-23 23:12 Mike Frysinger (vapier)
2009-05-24  0:33 Michael Sterrett (mr_bones_)
2009-05-26  7:18 Mike Frysinger (vapier)
2009-06-09 22:15 Ryan Hill (dirtyepic)
2009-07-20  4:28 Mike Frysinger (vapier)
2009-07-29  8:31 Samuli Suominen (ssuominen)
2009-07-29  8:32 Samuli Suominen (ssuominen)
2009-08-15 18:04 Zac Medico (zmedico)
2009-10-04 10:00 Samuli Suominen (ssuominen)
2010-02-17 18:20 Samuli Suominen (ssuominen)
2010-04-02  2:50 Jonathan Callen (abcd)
2010-05-08  3:47 Ryan Hill (dirtyepic)
2011-02-01  5:41 Ryan Hill (dirtyepic)
2011-02-25 10:51 Ryan Hill (dirtyepic)
2011-07-12  3:58 Mike Frysinger (vapier)
2011-07-12  4:08 Mike Frysinger (vapier)
2011-08-17 17:54 Mike Frysinger (vapier)
2011-08-17 17:59 Mike Frysinger (vapier)
2011-08-17 18:20 Mike Frysinger (vapier)
2011-10-08 18:37 Mike Frysinger (vapier)
2011-11-14 20:29 Mike Frysinger (vapier)
2011-12-07  6:42 Mike Frysinger (vapier)
2011-12-15  5:23 Mike Frysinger (vapier)
2012-01-13 22:40 Mike Frysinger (vapier)
2012-01-14  8:05 Mike Frysinger (vapier)
2012-01-14  8:22 Mike Frysinger (vapier)
2012-01-14  9:10 Mike Frysinger (vapier)
2012-01-16 20:03 Mike Frysinger (vapier)
2012-02-26 12:09 Anthony G. Basile (blueness)
2012-05-26  2:55 Mike Frysinger (vapier)
2012-05-31  0:24 Mike Frysinger (vapier)
2012-05-31  0:29 Mike Frysinger (vapier)
2012-06-23 22:21 Mike Frysinger (vapier)
2012-10-30 20:20 Mike Frysinger (vapier)
2012-10-30 20:51 Mike Frysinger (vapier)
2012-11-11  7:00 Mike Frysinger (vapier)
2012-11-11 20:00 Mike Frysinger (vapier)
2012-11-18  8:27 Mike Frysinger (vapier)
2012-11-18  8:29 Mike Frysinger (vapier)
2012-11-29 23:27 Mike Frysinger (vapier)
2012-12-03 21:20 Mike Frysinger (vapier)
2013-01-12 14:32 Justin Lecher (jlec)
2013-09-05  5:28 Mike Frysinger (vapier)
2013-09-30  6:39 Mike Frysinger (vapier)
2013-10-12 19:50 Mike Frysinger (vapier)
2014-02-02 22:26 Thomas Sachau (tommy)
2014-08-11  0:36 Joshua Kinard (kumba)
2014-11-01  3:45 Mike Frysinger (vapier)
2014-12-31  8:26 Mike Frysinger (vapier)
2015-05-06  7:04 Mike Frysinger (vapier)
2015-05-24  7:05 Mike Frysinger (vapier)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox