diff --git a/bootstrap.sh b/bootstrap.sh index 5c780ea..6e1cf3a 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -8,9 +8,9 @@ add-apt-repository -y ppa:byteit101/frc-toolchain apt-get update apt-get install -y frc-toolchain # Compiles code in the /vagrant/src folder -echo "echo 'Starting build';(test -d /vagrant/src/Debug&&test -f /vagrant/src/Debug/makefile&&(cd /vagrant/src/Debug/&&make -f makefile clean;make -f makefile);cd -)||(test -f /vagrant/build/FRCUserProgram&&rm /vagrant/build/FRCUserProgram;arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include '-I/vagrant/src' -O0 -g3 -Wall -c -fmessage-length=0 -o /vagrant/build/Robot.o /vagrant/src/\`cat /vagrant/config/buildfile|head -n 1\`&&arm-frc-linux-gnueabi-g++ -L/vagrant/wpilib/lib -Wl,-rpath,/opt/GenICam_v2_3/bin/Linux_armv7-a -o /vagrant/build/FRCUserProgram /vagrant/build/Robot.o -lwpi;rm /vagrant/build/Robot.o);echo 'Done'" > /usr/local/bin/build +echo "echo 'Starting build';(test -d /vagrant/src/Debug&&test -f /vagrant/src/Debug/makefile&&(cd /vagrant/src/Debug/&&make -f makefile clean;make -f makefile;cd -))||(test -f /vagrant/build/FRCUserProgram&&rm /vagrant/build/FRCUserProgram;test -f \`cat /vagrant/config/buildfile|head -n 1\`&&(arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include '-I/vagrant/src' -O0 -g3 -Wall -c -fmessage-length=0 -o /vagrant/build/Robot.o /vagrant/src/\`cat /vagrant/config/buildfile|head -n 1\`&&arm-frc-linux-gnueabi-g++ -L/vagrant/wpilib/lib -Wl,-rpath,/opt/GenICam_v2_3/bin/Linux_armv7-a -o /vagrant/build/FRCUserProgram /vagrant/build/Robot.o -lwpi;rm /vagrant/build/Robot.o))||(/home/vagrant/compile.sh);echo 'Done'" > /usr/local/bin/build # Uploads the code to the rRIO based on /vagrant/config/host file -echo "cat /vagrant/FRCUserProgram | ssh \`cat /vagrant/config/host|head -n 1\` 'cat > /home/lvuser/FRCUserProgram2&&rm /home/lvuser/FRCUserProgram;mv /home/lvuser/FRCUserProgram2 /home/lvuser/FRCUserProgram&&. /etc/profile.d/natinst-path.sh;chmod a+x /home/lvuser/FRCUserProgram;/usr/local/frc/bin/frcKillRobot.sh -t -r'||echo 'You probably haven\'t succesfully built yet. Run build to compile the program''" > /usr/local/bin/deploy +echo "cat /vagrant/build/FRCUserProgram | ssh \`cat /vagrant/config/host|head -n 1\` 'cat > /home/lvuser/FRCUserProgram2&&rm /home/lvuser/FRCUserProgram;mv /home/lvuser/FRCUserProgram2 /home/lvuser/FRCUserProgram&&. /etc/profile.d/natinst-path.sh;chmod a+x /home/lvuser/FRCUserProgram;/usr/local/frc/bin/frcKillRobot.sh -t -r'||echo 'You probably haven\'t succesfully built yet. Run build to compile the program''" > /usr/local/bin/deploy # Creates ssh key if it doesn't exist and cats the public key to the rRIO echo "test -d ~/.ssh||mkdir ~/.ssh;test -f ~/.ssh/id_rsa||ssh-keygen -t rsa -f ~/.ssh/id_rsa -b 4096 -q -N '';cat ~/.ssh/id_rsa.pub|ssh \`cat /vagrant/config/host|head -n 1\` 'cat >> ~/.ssh/authorized_keys'" > /usr/local/bin/putkey chmod +x /usr/local/bin/build /usr/local/bin/deploy /usr/local/bin/putkey diff --git a/compile.sh b/compile.sh index 52c4fc9..66fdb54 100755 --- a/compile.sh +++ b/compile.sh @@ -12,11 +12,12 @@ for DIR in $TMP;do done for SRC in $SRCS;do #echo arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include $INCLUDE -O0 -g3 -Wall -c -fmessage-length=0 -o /vagrant/src/"$SRC".o "$SRC" - echo "Compiling $(echo -n $SRC|sed -e 's/.+\/\(.+\)\.cpp//')" - arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include $INCLUDE -O0 -g3 -Wall -c -fmessage-length=0 -o "$SRC.o" "/vagrant/src/$SRC"||exit 1 + echo "Compiling $(echo -n $SRC|sed -e 's/.+\/\(.+\)\.cpp//')" to "$SRC.o" + #echo arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include $INCLUDE -O0 -g3 -Wall -c -fmessage-length=0 -o "$SRC.o" "/vagrant/src/$(echo $SRC|cut -b "1 2" --complement)" + arm-frc-linux-gnueabi-g++ -std=c++1y -I/vagrant/wpilib/include $INCLUDE -O0 -g3 -Wall -c -fmessage-length=0 -o "$SRC.o" "/vagrant/src/$(echo $SRC|cut -b "1 2" --complement)"||exit 1 done COMPILED=$(find -type f -name \*.cpp.o|sed -e 's/\(.+\)\.cpp\.o$/\1/') #echo $COMPILED -echo Linked +echo Linking arm-frc-linux-gnueabi-g++ -L/vagrant/wpilib/lib -Wl,-rpath,/opt/GenICam_v2_3/bin/Linux_armv7-a -o /vagrant/build/FRCUserProgram $COMPILED -lwpi cd -