aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Arnold <nerdboy@gentoo.org>2017-10-14 15:28:08 -0700
committerSteve Arnold <nerdboy@gentoo.org>2017-10-14 15:28:08 -0700
commit8f04ee910e38c38f597ebebc35190140e6ffa310 (patch)
tree227f59c23bec7ff31ab4a24e2f9b0fbca7801848
parentsys-devel/crossdev: Fix avr hack, move it inside doemerge block (diff)
downloadcrossdev-8f04ee91.tar.gz
crossdev-8f04ee91.tar.bz2
crossdev-8f04ee91.zip
sys-devel/crossdev: avr: disable pie, set default stage, make symlink
more robust Signed-off-by: Steve Arnold <nerdboy@gentoo.org>
-rwxr-xr-xcrossdev22
1 files changed, 11 insertions, 11 deletions
diff --git a/crossdev b/crossdev
index 048f82a..7fdb3e3 100755
--- a/crossdev
+++ b/crossdev
@@ -224,12 +224,14 @@ parse_target() {
# this is a linux+ target, not microcontroller (below)
avr32*) :;;
- avr*) KPKG="[none]";
- LCAT="dev-embedded"; LPKG="avr-libc";
- GUSE="-fortran -go" # doesn't work
+ avr*) KPKG="[none]"
+ LCAT="dev-embedded"
+ LPKG="avr-libc"
+ GUSE="-fortran -go -pie nopie" # doesn't work
MULTILIB_USE="yes" #377039
- WITH_DEF_HEADERS="no"
- MAKE_SYMLINK="yes";;
+ STAGE_DEFAULT=${STAGE_LIBC}
+ MAKE_SYMLINK="yes"
+ WITH_DEF_HEADERS="no";;
# due to upstream lameness, build C/C++ at first glance
*-cygwin)
@@ -1027,15 +1029,13 @@ set_portage() {
case ${CTARGET} in
# avr requires multilib, that provides
# libgcc for all sub-architectures #378387
- avr*) set_use_force ${pkg} multilib
- ;;
- *) set_use_force ${pkg} -multilib
- ;;
+ avr*) set_use_force ${pkg} multilib;
+ set_use_mask ${pkg} -multilib;;
+ *) set_use_force ${pkg} -multilib;;
esac
set_keywords ${pkg} ${ver}
set_use ${pkg} ${use}
- set_use_mask ${pkg} -multilib
set_links ${cat} ${pkg} "${ovl}"
set_env ${l} ${pkg} "${env}"
}
@@ -1297,7 +1297,7 @@ if ! ex_fast ; then
# this is to make sure that avr linker can find its a**, er, ldscripts
if [[ ${MAKE_SYMLINK} == "yes" ]] ; then
case ${CTARGET} in
- avr*) [[ -e ${EPREFIX}/usr/${CTARGET}/lib/ldscripts ]] || \
+ avr*) ( ! [[ -h ${EPREFIX}/usr/${CTARGET}/lib/ldscripts ]] && [[ -d ${EPREFIX}/usr/${CTARGET}/lib ]] ) && \
ln -s ${EPREFIX}/usr/$CHOST/${CTARGET}/lib/ldscripts ${EPREFIX}/usr/${CTARGET}/lib/
;;
*) ;;