Browse Source

feat: create scripts to automate workflow

master
Dennis Buchhorn 2 years ago
parent
commit
0d24836482
4 changed files with 113 additions and 0 deletions
  1. +3
    -0
      .gitignore
  2. +78
    -0
      clean_and_recreate_all
  3. +26
    -0
      init_after_clone
  4. +6
    -0
      tcl_scripts/import_platform_only.tcl.gitsubstitute

+ 3
- 0
.gitignore View File

@ -23,3 +23,6 @@ vitis_pid*.str
# ignore ide scripts
/*_system/_ide/scripts/*
# ignore local only files
.repo_initialized

+ 78
- 0
clean_and_recreate_all View File

@ -0,0 +1,78 @@
#!/bin/bash
NO_PROMPT="false"
START_VITIS="false"
IMPORT_HW_PLATFORM_ONLY="false"
REPO_INITIALIZED_FILE_EXISTS="false"
for arg in "$@"; do
if [ $arg == "--no-prompt" ]; then
NO_PROMPT="true"
elif [ $arg == "--start-vitis" ]; then
START_VITIS="true"
elif [ $arg == "--import-hw-platform-only" ]; then
IMPORT_HW_PLATFORM_ONLY="true"
fi
done
if [ $NO_PROMPT == "false" ]; then
read -p "!!! WARNING !!! All unstaged and untracked files will be deleted! Press ENTER to continue or CTRL+C to abort..."
fi
echo "############################################################"
echo "# Delete all unstaged and untracked files ..."
echo "############################################################"
if [ -f ".repo_initialized" ]; then
REPO_INITIALIZED_FILE_EXISTS="true"
fi
git clean -dfx
if [ $REPO_INITIALIZED_FILE_EXISTS == "true" ]; then
touch .repo_initialized
echo "This file is checked by the 'init_after_clone' script." >> .repo_initialized
fi
echo "############################################################"
echo "# Re-checkout current branch ..."
echo "############################################################"
git checkout
echo "############################################################"
echo "# Create hardware platform ..."
echo "############################################################"
xsct scripts/platform_create.tcl
if [ $IMPORT_HW_PLATFORM_ONLY == "true" ]; then
echo "############################################################"
echo "# Import hw_platform only to workspace ..."
echo "############################################################"
xsct scripts/import_platform_only.tcl
else
echo "############################################################"
echo "# Import all projects to workspace ..."
echo "############################################################"
xsct scripts/import_platform_and_projects.tcl
fi
# Disable Vitis welcome screen
FILE=".metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs"
touch $FILE
echo "eclipse.preferences.version=1" >> $FILE
echo "showIntro=false" >> $FILE
echo "############################################################"
echo "# ... finished!"
if [ $START_VITIS == "true" ]; then
echo "#"
echo "# Starting Vitis ..."
echo "############################################################"
vitis -workspace .
else
echo "#"
echo "# Start Vitis with 'vitis -workspace .'"
echo "############################################################"
fi

+ 26
- 0
init_after_clone View File

@ -0,0 +1,26 @@
#!/bin/bash
if [ -f ".repo_initialized" ]; then
echo "This repo is already initialized!"
else
if [ -f "README_PROJECT_TEMPLATE.md" ]; then
echo "First run after creation from template."
rm -f README.md
mv README_PROJECT_TEMPLATE.md README.md
touch .repo_initialized
echo "This file is checked by the 'init_after_clone' script." >> .repo_initialized
git add README.md README_PROJECT_TEMPLATE.md
git commit -m "chore: replace template readme"
git config --local core.hooksPath .githooks
source ./clean_and_recreate_all --no-prompt --import-hw-platform-only
else
git config --local core.hooksPath .githooks
source ./clean_and_recreate_all --no-prompt
fi
fi

+ 6
- 0
tcl_scripts/import_platform_only.tcl.gitsubstitute View File

@ -0,0 +1,6 @@
setws {$$${GITSUBSTITUTE_REPO_ROOT}}
##########################################################################################
# !!! Leave the 'hw_platform' unchanged !!!
##########################################################################################
importprojects ./hw_platform

Loading…
Cancel
Save