Skip to content

Commit 918c70e

Browse files
committed
Rename 'targetDir' to 'RunTargetBuildDir' and make it public
1 parent 9ddea04 commit 918c70e

2 files changed

Lines changed: 23 additions & 22 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ Please check the official [HBS user manual](https://github.com/m-kru/hbs/blob/ma
4242
- `vivado-prj`: Bitstream file name changed from current project name to `hbs::Top`.
4343
This is required for `write_hw_platform -include_bit` command to work without any extra actions.
4444
- Rename `TopCore` and `TopTarget` to `RunCore` and `RunTarget`.
45+
- Rename `targetDir` to `RunTargetBuildDir` and make it public.
4546

4647
### Fixed
4748
- Generics handling for xsim.

hbs.tcl

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ namespace eval hbs {
119119
# List with command line arguments passed to the run target.
120120
set RunTargetArgs ""
121121

122+
# Run target output build directory.
123+
set RunTargetBuildDir ""
124+
122125
# List containing regexes for excluding discovered .hbs files from being sourced.
123126
#
124127
# See also 'hbs doc AddFileIgnoreRegex'.
@@ -560,20 +563,20 @@ namespace eval hbs {
560563

561564
if {$hbs::cmd eq "dump-cores"} { return }
562565

563-
if {$hbs::targetDir == ""} {
566+
if {$hbs::RunTargetBuildDir == ""} {
564567
set prjName [regsub -all :: "$hbs::ThisCorePath\:\:$hbs::ThisTargetName" --]
565-
set hbs::targetDir [file join $hbs::BuildDir $prjName]
568+
set hbs::RunTargetBuildDir [file join $hbs::BuildDir $prjName]
566569
}
567-
if {[file exist $hbs::targetDir] eq 0} {
568-
file mkdir $hbs::targetDir
570+
if {[file exist $hbs::RunTargetBuildDir] eq 0} {
571+
file mkdir $hbs::RunTargetBuildDir
569572
}
570573

571574
# Dump cores to JSON file.
572575
#
573576
# Replace "::" with "--".
574577
# Glib does not support ':' in file names.
575578
set fileName [string map {"::" "--"} $hbs::RunTargetPath].json
576-
set filePath [file join $hbs::targetDir $fileName]
579+
set filePath [file join $hbs::RunTargetBuildDir $fileName]
577580
switch $hbs::Tool {
578581
# gw_sh changes working directory to project directory.
579582
"gowin" {
@@ -920,9 +923,6 @@ namespace eval hbs {
920923
exit 1
921924
}
922925

923-
# Target output directory.
924-
set targetDir ""
925-
926926
# Stage callbacks
927927
set preAnalCbs []
928928
set postAnalCbs []
@@ -1493,7 +1493,7 @@ namespace eval hbs::ghdl {
14931493
hbs::Debug "starting files analysis"
14941494

14951495
set workDir [pwd]
1496-
cd $hbs::targetDir
1496+
cd $hbs::RunTargetBuildDir
14971497

14981498
dict for {file args} $hbs::ghdl::vhdlFiles {
14991499
set lib [dict get $args lib]
@@ -1515,7 +1515,7 @@ namespace eval hbs::ghdl {
15151515

15161516
proc elaborate {} {
15171517
set workDir [pwd]
1518-
cd $hbs::targetDir
1518+
cd $hbs::RunTargetBuildDir
15191519

15201520
set cmd "ghdl -e $hbs::ArgsPrefix --std=[hbs::ghdl::std] --workdir=work $hbs::ghdl::libs $hbs::ArgsSuffix $hbs::Top"
15211521
set err [hbs::Exec $cmd]
@@ -1528,7 +1528,7 @@ namespace eval hbs::ghdl {
15281528

15291529
proc simulate {} {
15301530
set workDir [pwd]
1531-
cd $hbs::targetDir
1531+
cd $hbs::RunTargetBuildDir
15321532

15331533
set cmd "./$hbs::Top $hbs::ArgsPrefix --wave=$hbs::Top.ghw [hbs::ghdl::genericArgs] --assert-level=$hbs::ExitSeverity $hbs::ArgsSuffix"
15341534
set err [hbs::Exec $cmd]
@@ -1618,7 +1618,7 @@ namespace eval hbs::gowin {
16181618
hbs::Eval $create_prj_cmd
16191619

16201620
# Set target directory for later use.
1621-
set hbs::targetDir [file join $hbs::BuildDir $prjName]
1621+
set hbs::RunTargetBuildDir [file join $hbs::BuildDir $prjName]
16221622

16231623
hbs::Debug "gowin project created successfully"
16241624
} else {
@@ -1853,7 +1853,7 @@ namespace eval hbs::nvc {
18531853
hbs::Debug "starting files analysis"
18541854

18551855
set workDir [pwd]
1856-
cd $hbs::targetDir
1856+
cd $hbs::RunTargetBuildDir
18571857

18581858
dict for {file args} $hbs::nvc::vhdlFiles {
18591859
set lib [dict get $args lib]
@@ -1869,7 +1869,7 @@ namespace eval hbs::nvc {
18691869

18701870
proc elaborate {} {
18711871
set workDir [pwd]
1872-
cd $hbs::targetDir
1872+
cd $hbs::RunTargetBuildDir
18731873

18741874
set cmd "nvc $hbs::ArgsPrefix --std=$hbs::nvc::std $hbs::nvc::libs -e $hbs::Top [hbs::nvc::genericArgs] $hbs::ArgsSuffix"
18751875
set err [hbs::Exec $cmd]
@@ -1882,7 +1882,7 @@ namespace eval hbs::nvc {
18821882

18831883
proc simulate {} {
18841884
set workDir [pwd]
1885-
cd $hbs::targetDir
1885+
cd $hbs::RunTargetBuildDir
18861886

18871887
set cmd "nvc $hbs::ArgsPrefix --std=$hbs::nvc::std $hbs::nvc::libs -r $hbs::Top --wave --exit-severity=$hbs::ExitSeverity $hbs::ArgsSuffix"
18881888
set err [hbs::Exec $cmd]
@@ -1956,8 +1956,8 @@ namespace eval hbs::vivado-prj {
19561956

19571957
proc setTool {} {
19581958
set prjName [regsub -all :: "$hbs::ThisCorePath\:\:$hbs::ThisTargetName" --]
1959-
set hbs::targetDir [file join $hbs::BuildDir $prjName]
1960-
set create_prj_cmd "create_project $hbs::ArgsPrefix -force $prjName $hbs::targetDir $hbs::ArgsSuffix"
1959+
set hbs::RunTargetBuildDir [file join $hbs::BuildDir $prjName]
1960+
set create_prj_cmd "create_project $hbs::ArgsPrefix -force $prjName $hbs::RunTargetBuildDir $hbs::ArgsSuffix"
19611961
if {$hbs::DryRun} {
19621962
hbs::Eval $create_prj_cmd
19631963
return
@@ -2279,7 +2279,7 @@ namespace eval hbs::xsim {
22792279
hbs::Debug "starting files analysis"
22802280

22812281
set workDir [pwd]
2282-
cd $hbs::targetDir
2282+
cd $hbs::RunTargetBuildDir
22832283

22842284
dict for {file args} $hbs::xsim::hdlFiles {
22852285
set ext [file extension $file]
@@ -2295,7 +2295,7 @@ namespace eval hbs::xsim {
22952295

22962296
proc elaborate {} {
22972297
set workDir [pwd]
2298-
cd $hbs::targetDir
2298+
cd $hbs::RunTargetBuildDir
22992299

23002300
set cmd "xelab $hbs::ArgsPrefix -debug all [hbs::xsim::genericArgs] $hbs::Top $hbs::ArgsSuffix"
23012301
set err [hbs::Exec $cmd]
@@ -2308,7 +2308,7 @@ namespace eval hbs::xsim {
23082308

23092309
proc simulate {} {
23102310
set workDir [pwd]
2311-
cd $hbs::targetDir
2311+
cd $hbs::RunTargetBuildDir
23122312

23132313
set batchFile $hbs::xsim::tclBatchFile
23142314
if {$batchFile == ""} {
@@ -2515,7 +2515,7 @@ namespace eval hbs::questa {
25152515
hbs::Debug "starting files analysis"
25162516

25172517
set workDir [pwd]
2518-
cd $hbs::targetDir
2518+
cd $hbs::RunTargetBuildDir
25192519

25202520
dict for {file args} $hbs::questa::hdlFiles {
25212521
set ext [file extension $file]
@@ -2531,7 +2531,7 @@ namespace eval hbs::questa {
25312531

25322532
proc simulate {} {
25332533
set workDir [pwd]
2534-
cd $hbs::targetDir
2534+
cd $hbs::RunTargetBuildDir
25352535

25362536
set doFile $hbs::questa::doFile
25372537
if {$doFile == ""} {

0 commit comments

Comments
 (0)