You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
1.8 KiB
81 lines
1.8 KiB
#!/bin/sh |
|
|
|
set -e |
|
set -x |
|
|
|
echo "First source all variables and THEN run this script" |
|
read something |
|
|
|
SUFFIX="" |
|
if [ $# -ge 1 ]; then |
|
SUFFIX="-$1" |
|
fi |
|
|
|
LOG=~/master-thesis/netpfga/log/compile-$(date +%F-%H%M%S)$SUFFIX |
|
|
|
( |
|
|
|
# Step 1..3: create code |
|
# Step 4: |
|
date |
|
cd $P4_PROJECT_DIR && make |
|
|
|
# Step 5: sdnet simulation |
|
date |
|
cd $P4_PROJECT_DIR/nf_sume_sdnet_ip/SimpleSumeSwitch && ./vivado_sim.bash |
|
|
|
expected_line=$(grep ^expected "$LOG" | sed -e 's/.*= <//' -e 's/.*= (//') |
|
actual_line=$(grep ^actual "$LOG" | sed -e 's/.*= <//' -e 's/.*= (//') |
|
|
|
# if [ -z "$expected_line" ]; then |
|
# echo "Empty packet grep -- probably broken - aborting" |
|
# exit 1 |
|
# fi |
|
|
|
if [ "$expected_line" != "$actual_line" ]; then |
|
echo packet mismatch |
|
exit 1 |
|
fi |
|
|
|
# Step 6: calls ${SUME_SDNET}/bin/gen_config_writes.py and generates SOMETHING |
|
date |
|
cd $P4_PROJECT_DIR && make config_writes |
|
|
|
# Step 7: copies directory SDNET_OUT_DIR to TARGET and copies other dirs |
|
date |
|
cd $P4_PROJECT_DIR && make uninstall_sdnet && make install_sdnet |
|
|
|
# Step 8: copies "config_writes.py" to the current dir - related to step 6 |
|
date |
|
cd $NF_DESIGN_DIR/test/sim_switch_default && make |
|
|
|
# -------- FIX config_writes.py here: add " pass" or overwrite whole script |
|
|
|
# Step 9: Run the SUME simulation |
|
date |
|
cd $SUME_FOLDER && ./tools/scripts/nf_test.py sim --major switch --minor default |
|
|
|
# Step 10: long compile step |
|
date |
|
if [ "$something" = no ]; then |
|
: |
|
else |
|
cd $NF_DESIGN_DIR && make |
|
fi |
|
|
|
# Step 11: (nothing to be done) |
|
|
|
# Step 12: |
|
date |
|
cd $NF_DESIGN_DIR/bitfiles |
|
mv simple_sume_switch.bit ${P4_PROJECT_NAME}.bit |
|
cp $P4_PROJECT_DIR/testdata/config_writes.sh ./ |
|
|
|
# Step 13: |
|
date |
|
cd $NF_DESIGN_DIR/bitfiles/ |
|
# some scripts are, some scripts aren't executable... |
|
chmod u+x $(pwd -P)/program_switch.sh |
|
sudo bash -c ". $HOME/master-thesis/netpfga/bashinit && $(pwd -P)/program_switch.sh" |
|
|
|
) 2>&1 | tee "$LOG"
|
|
|