Advertisement
Guest User

Untitled

a guest
Jan 27th, 2015
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.42 KB | None | 0 0
  1. if ! echo "${CFLAGS} ${CXXFLAGS} ${LDFLAGS}" | \
  2.    grep -E '\-f(no\-)?profile' >/dev/null; then
  3.  
  4.     FEATURES="-usersandbox"  # does not work here, use nosandbox.conf
  5.  
  6.     PROFILE_ROOT="/etc/portage/env/profiles/${PN}/${PVR}"
  7.     PROFILE_SUFFIX="_e1/_e2/_e3" # somepackage writes to ../../
  8.     PROFILE_DIR="${PROFILE_ROOT}/${PROFILE_SUFFIX}"
  9.  
  10.     PROFILE_USE="-fprofile-dir=\"${PROFILE_DIR}\" -fprofile-use -fprofile-correction"
  11.     PROFILE_GEN="-fprofile-dir=\"${PROFILE_DIR}\" -fprofile-generate -fno-lto"
  12.     # ^ saves bugs and memory (4.9.1)
  13.     # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375#c31
  14.  
  15.     if [ ! -d "${PROFILE_DIR}" ]; then
  16.         mkdir -p "${PROFILE_DIR}"
  17.     fi
  18.  
  19.     if [ -e "${PROFILE_ROOT}/.is_generated" -a \
  20.         ! -e "${PROFILE_ROOT}/.is_compiled" ]; then
  21.         chown -R root:root "${PROFILE_ROOT}"
  22.         chmod -R a-w+r "${PROFILE_ROOT}"
  23.  
  24.         export _COMPILING_PROFILE_ROOT="${PROFILE_ROOT}"    # catched in .bashrc
  25.         CFLAGS="${CFLAGS} ${PROFILE_USE}"
  26.         CXXFLAGS="${CXXFLAGS} ${PROFILE_USE}"
  27.         LDFLAGS="${LDFLAGS} ${PROFILE_USE}"
  28.     else
  29.         chown -R portage:users "${PROFILE_ROOT}"
  30.         chmod -R og+rw "${PROFILE_ROOT}"
  31.  
  32.         export _GENERATING_PROFILE_ROOT="${PROFILE_ROOT}"    # catched in .bashrc
  33.         CFLAGS="${CFLAGS} ${PROFILE_GEN}"
  34.         CXXFLAGS="${CXXFLAGS} ${PROFILE_GEN}"
  35.         LDFLAGS="${LDFLAGS} ${PROFILE_GEN}"
  36.     fi
  37. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement