parent
							
								
									704a2e8d3c
								
							
						
					
					
						commit
						ca56c2145f
					
				@ -0,0 +1,18 @@
 | 
				
			||||
#!/bin/sh
 | 
				
			||||
pkg update
 | 
				
			||||
pkg install -y \
 | 
				
			||||
	git \
 | 
				
			||||
	wget \
 | 
				
			||||
	gmake \
 | 
				
			||||
	gcc \
 | 
				
			||||
	zip \
 | 
				
			||||
	unzip \
 | 
				
			||||
	avr-binutils \
 | 
				
			||||
	avr-gcc \
 | 
				
			||||
	avr-libc \
 | 
				
			||||
	dfu-programmer \
 | 
				
			||||
	dfu-util \
 | 
				
			||||
	arm-none-eabi-gcc \
 | 
				
			||||
	arm-none-eabi-binutils \
 | 
				
			||||
	arm-none-eabi-newlib \
 | 
				
			||||
	diffutils
 | 
				
			||||
@ -1,118 +0,0 @@
 | 
				
			||||
#!/usr/bin/env bash
 | 
				
			||||
# This script will attempt to setup the Linux dependencies for compiling QMK/TMK
 | 
				
			||||
 | 
				
			||||
# This could probably go much lower, but since we are including an Arch vagrant,
 | 
				
			||||
# making it the first match makes sense
 | 
				
			||||
 | 
				
			||||
if [[ -n "$(type -P pacman )" ]]; then
 | 
				
			||||
  # Arch linux and derivatives like Apricity
 | 
				
			||||
  # Future improvements:
 | 
				
			||||
  # Allow user to speed up package installs using powerpill/wget tweaks
 | 
				
			||||
  # Always run the pacman mirror update script if possible when vagrant comes up
 | 
				
			||||
  # This will ensure that users never get stalled on a horribly slow mirror
 | 
				
			||||
  pacman -Syyu --needed --noconfirm
 | 
				
			||||
  pacman -S --needed --noconfirm \
 | 
				
			||||
    base-devel \
 | 
				
			||||
    avr-gcc \
 | 
				
			||||
    avr-binutils \
 | 
				
			||||
    avr-libc \
 | 
				
			||||
    dfu-util \
 | 
				
			||||
    arm-none-eabi-gcc \
 | 
				
			||||
    arm-none-eabi-binutils \
 | 
				
			||||
    arm-none-eabi-newlib \
 | 
				
			||||
    git \
 | 
				
			||||
    diffutils
 | 
				
			||||
 | 
				
			||||
elif [[ -n "$(type -P apt-get)" ]]; then
 | 
				
			||||
  # Debian and derivatives
 | 
				
			||||
  # This block performs completely non-interactive updates {{
 | 
				
			||||
  export DEBIAN_FRONTEND=noninteractive
 | 
				
			||||
  export DEBCONF_NONINTERACTIVE_SEEN=true
 | 
				
			||||
  echo "grub-pc hold" | dpkg --set-selections
 | 
				
			||||
  apt-get -y update
 | 
				
			||||
  apt-get -y --allow-unauthenticated upgrade \
 | 
				
			||||
	  -o Dpkg::Options::="--force-confdef" \
 | 
				
			||||
	  -o Dpkg::Options::="--force-confold"
 | 
				
			||||
  # }}
 | 
				
			||||
  apt-get install -y \
 | 
				
			||||
    build-essential \
 | 
				
			||||
    gcc \
 | 
				
			||||
    unzip \
 | 
				
			||||
    wget \
 | 
				
			||||
    zip \
 | 
				
			||||
    gcc-avr \
 | 
				
			||||
    binutils-avr \
 | 
				
			||||
    avr-libc \
 | 
				
			||||
    dfu-programmer \
 | 
				
			||||
    dfu-util \
 | 
				
			||||
    gcc-arm-none-eabi \
 | 
				
			||||
    binutils-arm-none-eabi \
 | 
				
			||||
    libnewlib-arm-none-eabi \
 | 
				
			||||
    git \
 | 
				
			||||
    diffutils
 | 
				
			||||
 | 
				
			||||
elif [[ -n "$(type -P yum)" ]]; then
 | 
				
			||||
  # Fedora, CentOS or RHEL and derivatives
 | 
				
			||||
  yum -y makecache && yum -y update
 | 
				
			||||
  yum -y install \
 | 
				
			||||
    gcc \
 | 
				
			||||
    glibc-headers \
 | 
				
			||||
    kernel-devel \
 | 
				
			||||
    kernel-headers \
 | 
				
			||||
    make \
 | 
				
			||||
    perl \
 | 
				
			||||
    git \
 | 
				
			||||
    wget \
 | 
				
			||||
    avr-binutils \
 | 
				
			||||
    avr-gcc \
 | 
				
			||||
    avr-libc \
 | 
				
			||||
    dfu-programmer \
 | 
				
			||||
    dfu-util \
 | 
				
			||||
    arm-none-eabi-gcc-cs \
 | 
				
			||||
    arm-none-eabi-newlib \
 | 
				
			||||
    git \
 | 
				
			||||
    diffutils
 | 
				
			||||
  # The listed eabi pacackes do unfortunately not exist for CentOS,
 | 
				
			||||
  # But at least in Fedora they do, so try to install them anyway
 | 
				
			||||
  # TODO: Build them from sources, if the installation fails
 | 
				
			||||
 | 
				
			||||
elif [[ -n "$(type -P zypper)" ]]; then
 | 
				
			||||
  # openSUSE
 | 
				
			||||
  zypper --non-interactive refresh  && zypper --non-interactive update
 | 
				
			||||
  zypper --non-interactive install \
 | 
				
			||||
    git \
 | 
				
			||||
    make \
 | 
				
			||||
    gcc \
 | 
				
			||||
    kernel-devel \
 | 
				
			||||
    patch \
 | 
				
			||||
    wget \
 | 
				
			||||
    dfu-programmer \
 | 
				
			||||
    git \
 | 
				
			||||
    diffutils
 | 
				
			||||
  # TODO: The avr and eabi tools are not available as default packages, so we need 
 | 
				
			||||
  # another way to install them
 | 
				
			||||
 | 
				
			||||
elif [[ -n "$(type -P pkg)" ]]; then
 | 
				
			||||
  # FreeBSD
 | 
				
			||||
  pkg update
 | 
				
			||||
  pkg install -y \
 | 
				
			||||
    git \
 | 
				
			||||
    wget \
 | 
				
			||||
    gmake \
 | 
				
			||||
    gcc \
 | 
				
			||||
    zip \
 | 
				
			||||
    unzip \
 | 
				
			||||
    avr-binutils \
 | 
				
			||||
    avr-gcc \
 | 
				
			||||
    avr-libc \
 | 
				
			||||
    dfu-programmer \
 | 
				
			||||
    dfu-util \
 | 
				
			||||
    arm-none-eabi-gcc \
 | 
				
			||||
    arm-none-eabi-binutils \
 | 
				
			||||
    arm-none-eabi-newlib \
 | 
				
			||||
    diffutils
 | 
				
			||||
elif [[ -n "$(type -P emerge)" ]]; then
 | 
				
			||||
    echo 'Please check that your gcc is built with the multilib use flag enabled.'
 | 
				
			||||
    emerge -vq sys-devel/crossdev
 | 
				
			||||
    USE="-openmp -hardened -sanitize -vtv" crossdev -s4 --stable --g =4.9.4 --portage --verbose --target avr
 | 
				
			||||
fi
 | 
				
			||||
					Loading…
					
					
				
		Reference in new issue