Advertisement
Necrose99

init-crossdev-arm.sh

May 2nd, 2018
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.19 KB | None | 0 0
  1. #/bin/bash
  2. ## https://github.com/sakaki-/gentoo-on-rpi3-64bit/wiki/Set-Up-Your-Gentoo-PC-for-Cross-Compilation-with-crossdev
  3. # and a few mods as crossdev may bork shit drop symlnkys in other repos...
  4. # @crossdev --clean
  5.  
  6. echo "INIT Arm/Arm64-crossdev targets."
  7. echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm:' > /proc/sys/fs/binfmt_misc/register
  8.  
  9. ### Initial INIT uncomment this crap..
  10. mkdir -pv /var/db/repos/portage-crossdev/{profiles,metadata}
  11. echo 'crossdev' > /var/db/repos/portage-crossdev/profiles/repo_name
  12. echo 'masters = gentoo' > /var/db/repos/portage-crossdev/metadata/layout.conf
  13. chown -R portage:portage /var/db/repos/portage-crossdev
  14. echo 'thin-manifests = true' >> /var/db/repos/portage-crossdev/metadata/layout.conf
  15. cat <<EOF >> /var/db/repos/portage-crossdev/metadata/layout.conf
  16. [crossdev]
  17.  
  18. location = /var/db/repos/portage-crossdev/
  19. priority = 10
  20. masters = gentoo
  21. auto-sync = no
  22. EOF
  23.  
  24. #location = /var/db/repos/portage-crossdev
  25. #priority = 10
  26. #masters = gentoo
  27. #auto-sync = no
  28. #EOF
  29.  
  30. ## recoment above Mkdir -eof if you going to re-int repo via crossdev clean/etc ie cronjob.
  31. #
  32. crossdev -t aarch64-unknown-linux-gnu --stable --init-target -oO /var/db/repos/portage-crossdev/
  33. crossdev -t armv7a-hardfloat-linux-gnueabi --stable --init-target -oO /var/db/repos/portage-crossdev/
  34.  
  35. ## fire up crossdev
  36. ## might have perfecly married both starters..
  37. ## ****dropping unknown**** from arm64 it fuggles metadata. entropy
  38. crossdev -t aarch64-linux-gnu --stable -oO -oO /var/db/repos/portage-crossdev/
  39. crossdev -t armv7a-hardfloat-linux-gnueabi --stable -oO /var/db/repos/portage-crossdev/
  40.  
  41. ## boot strap we can more sexy later in porthole and or manual re-emerge's...
  42. ## gcc to build sometimes you may need to "Massage" it in porthole anyhow... if it fails add more opts as you go.
  43. crossdev -v -t aarch64-linux-gnu --genv 'USE="cxx multilib fortran -mudflap nls openmp -sanitize  objc objc++ objc-gc graphite pgo vtv cilk go pie"' -oO /var/db/repos/portage-crossdev/
  44. crossdev -v -t armv7a-hardfloat-linux-gnueabi --genv 'USE="cxx multilib fortran -mudflap nls openmp -sanitize  objc objc++ objc-gc graphite pgo vtv cilk go pie"' -oO /var/db/repos/portage-crossdev/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement