################################################################################
############################### Project Specific ###############################
################################################################################
# everything
*

# git related
!/.gitignore
!/.gitattributes

# project documents
!/*.md
!/*.txt

################################################################################
############################### Vivado Specific ################################
################################################################################

# xpr: needed for recreating design
!/*.xpr

# source: include everything
!/*.srcs/
!/*.srcs/**/*

# runs: exclude everything but design run results
!/*.runs/
!/*.runs/impl_*/
!/*.runs/impl_*/*.bit
!/*.runs/impl_*/*.ltx

# xsa (Xilinx support archive): include for ps
!/*.xsa

################################################################################
################################ Vitis Specific ################################
################################################################################

# include sdk directory and everything in it
!/vitis*/
!/vitis*/**
/vitis*/**.log
/vitis*/.analytics

# exclude some obscure hidden SDK folders
/vitis*/.metadata/
/vitis*/.sdk/
/vitis*/RemoteSystemsTempFiles/
/vitis*/webtalk/

# hw_platform: exclude the entire hw_platform folder, as everything can be
# generated from the .hdf file. Make sure to include the bitstream in the .hdf
# file when exporting from Vivado!
/vitis*/*_hw_platform_*/

# BSP: only keep `.cproject`, `.project`, `.sdkproject`, `.system.mss` and
# Makefile, ps lib files are regenerated automatically
/vitis*/*_bsp/*
!/vitis*/*_bsp/*.cproject
!/vitis*/*_bsp/*.project
!/vitis*/*_bsp/*.sdkproject
!/vitis*/*_bsp/system.mss
!/vitis*/*_bsp/Makefile

# Application: ignored file patterns, exclude Debug & Release folders
/vitis*/**/*.o
/vitis*/**/*.d
/vitis*/**/*.a
/vitis*/*/Debug/
/vitis*/*/Release/

################################################################################
############################ Vivado & Vitis Common #############################
################################################################################

# file patterns that should always be ignored (journal files, log files, dump
# files that are created upon Vivado/SDK errors)
*.jou
*.log
*.backup.jou
*.backup.log
*.upgrade_log
*.dmp
*.debug
vivado_pid*

# vivado workspace files
xsim.dir/
xvlog.pb

# Xilinx tools generated files
.metadata/
.settings/
.wsdata/
.Xil/
logs/
Packages/
*.log*

# System generated files
# -- macOS
.DS_Store
.AppleDouble
.LSOverride
._*

# -- Windows
Thumbs.db
ehthumbs.db
Desktop.ini

# -- Linux
*~

# IDEs and editors' files
*.idea
*.vscode
*.sublime-workspace
*.sublime-project
