diff options
Diffstat (limited to 'mk/wrapper/transform-ido-cc')
-rw-r--r-- | mk/wrapper/transform-ido-cc | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/mk/wrapper/transform-ido-cc b/mk/wrapper/transform-ido-cc new file mode 100644 index 00000000000..e71d39ab7f2 --- /dev/null +++ b/mk/wrapper/transform-ido-cc @@ -0,0 +1,105 @@ +case $arg in +###################################################################### +# IDO 5.3 handles these -O statements, so just pass them through +# preserve -Olimit settings +###################################################################### +-O0|-O|-O1|-O2|-Olimit) + addtocache=yes + ;; +###################################################################### +# IDO 5.3 seems to have problems with -O3, so downgrade it +###################################################################### +-O3) + arg=-O2 + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +###################################################################### +# Directories for the runtime library search path are passed via +# "-Wl,-rpath,<dir>", not "-Wl,-R<dir>". +# Path elements are separated by ":". +###################################################################### +-Wl,-R*) + arg=`$echo "X$arg" | $Xsed -e "s|,|:|g" -e "s|^-Wl:-R|-Wl,-rpath,|"` + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +-Wl,-rpath,*) + arg=`$echo "X$arg" | $Xsed -e "s|,|:|g" -e "s|^-Wl:-rpath:|-Wl,-rpath,|"` + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +-rpath*) + arg=`$echo "X$arg" | $Xsed -e "s|,|:|g" -e "s|^-rpath.|-Wl,-rpath,|"` + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +-R*) + arg=`$echo "X$arg" | $Xsed -e "s|,|:|g" -e "s|^-R|-Wl,-rpath,|"` + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +###################################################################### +# different syntax +###################################################################### +-fsigned-char|-fno-unsigned-char) + arg=-signed + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes +;; +###################################################################### +# use -g3 in order to prevent disabling optimization +###################################################################### +-g) + arg=-g3 + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes +;; +###################################################################### +# The IDO 5.3 compiler accepts these -W* directives, so just pass them +# on through. +###################################################################### +-W[pKMfjusmocabyz]*,*) + addtocache=yes + ;; +###################################################################### +# Ignore all of the other -W*, -O*, -f*, -m* directives, which are +# likely to be GCCisms. +# Ignore -pipe +# Kill all -nostd* directives, since the standard libs and headers +# will not be considered by buildlink3 even if a respective +# -L or -I option is issued. +# ignore options that should prevent the use of shared libraries. +# ignore -n32, which is a MIPSpro-specific option. +###################################################################### +-[WOfm]*|-pipe|-MM|-nostd*|--disable-shared|-non_shared|-n32) + arg= + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +###################################################################### +# different syntax for profiling +###################################################################### +-pg) + arg=-p + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +###################################################################### +# different syntax +###################################################################### +-static) + arg="-B static" + split_arg=yes + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +###################################################################### +# different syntax +###################################################################### +-notall) + arg=-none + msg_log $wrapperlog " (transform-ido-cc) to: $arg" + addtocache=yes + ;; +esac |