X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=compilation;h=6320e7069b0338802e0928b295f40a992f3307b8;hb=c98f3820a04e7ada895c6733890a1dd6e30ee7e3;hp=9aab1ac62f274fea8bf2055e805a15af1ad84636;hpb=d8d14246f041acc7b29b2e8946367bcc39c23b85;p=bash.d.git diff --git a/compilation b/compilation index 9aab1ac..6320e70 100644 --- a/compilation +++ b/compilation @@ -1,10 +1,37 @@ -#!/bin/bash +#!/bin/sh -# Grab CFLAGS, etc. from make.conf. -source /etc/portage/make.conf +# Grab CFLAGS, etc. from our profile after first processing its parent +# profiles recursively +load_profile_defaults() { + local profile="${1}" + if [ -f "${profile}/parent" ]; then + for parent in $(cat "${profile}/parent"); do + local _parent_path="${profile}/${parent}" + load_profile_defaults "${_parent_path}" + done + fi -# LDFLAGS comes from.. somewhere else. -export LDFLAGS="-Wl,-O1 -Wl,--as-needed" + if [ -f "${profile}/make.defaults" ]; then + . "${profile}/make.defaults" + echo "loaded ${profile}/make.defaults" + fi +} -# Portage does this for us. -export MAKE="make ${MAKEOPTS}" +load_profile_defaults /etc/portage/make.profile + + +# and from make.conf, allowing the values in make.conf to override the +# ones in the profile. +if [ -f /etc/portage/make.conf ]; then + . /etc/portage/make.conf +fi + + +# Not a portage variable, but it's real handy. +REPOS="${DISTDIR}/../repositories" + +# These are really the only variables that make sense to export to +# subsequent commands. +export CFLAGS +export CXXFLAGS +export LDFLAGS