Skip to content

feat(docker): collect tool LICENSE files into install dir#4250

Open
luarss wants to merge 2 commits into
The-OpenROAD-Project:masterfrom
luarss:feat/include-tool-licenses
Open

feat(docker): collect tool LICENSE files into install dir#4250
luarss wants to merge 2 commits into
The-OpenROAD-Project:masterfrom
luarss:feat/include-tool-licenses

Conversation

@luarss
Copy link
Copy Markdown
Contributor

@luarss luarss commented May 21, 2026

Copy LICENSE files from tool source trees into tools/install/licenses/ so they are included in the final image. Excludes tools/OpenROAD/src/sta.

Fixes: https://github.com/The-OpenROAD-Project/AutoTuner/issues/146

Repro:

docker run --rm license-test:latest find /work/install/licenses -type f | sort

Output:

/work/install/licenses/kepler-formal/thirdparty/naja/thirdparty/naja-verilog/LICENSE           
/work/install/licenses/kepler-formal/thirdparty/naja/thirdparty/naja-verilog/LICENSES/Apache-2.0.txt
/work/install/licenses/kepler-formal/thirdparty/naja/thirdparty/naja-verilog/LICENSES/CC0-1.0.txt   
/work/install/licenses/kepler-formal/thirdparty/naja/thirdparty/naja-verilog/thirdparty/googletest/LICENSE
/work/install/licenses/kepler-formal/thirdparty/naja/thirdparty/spdlog-1.17.0/LICENSE                     
/work/install/licenses/kepler-formal/thirdparty/yaml-cpp/LICENSE                                          
/work/install/licenses/kepler-formal/thirdparty/yaml-cpp/test/googletest-1.13.0/LICENSE                   
/work/install/licenses/yosys-slang/LICENSE                                                                
/work/install/licenses/yosys-slang/third_party/fmt/LICENSE                                                
/work/install/licenses/yosys-slang/third_party/slang/LICENSE                                              
/work/install/licenses/yosys-slang/third_party/slang/LICENSES/BSL-1.0.txt                                 
/work/install/licenses/yosys-slang/third_party/slang/LICENSES/MIT.txt                                     
/work/install/licenses/yosys/abc/src/misc/btor/LICENSE.txt                                                
/work/install/licenses/yosys/abc/src/misc/bzlib/LICENSE                                                   
/work/install/licenses/yosys/abc/src/sat/bsat2/LICENSE                                                    
/work/install/licenses/yosys/abc/src/sat/cadical/LICENSE                                                  
/work/install/licenses/yosys/abc/src/sat/kissat/LICENSE                                                   
/work/install/licenses/yosys/abc/src/sat/satoko/LICENSE                                                   
/work/install/licenses/yosys/libs/cxxopts/LICENSE                                                         
/work/install/licenses/yosys/libs/minisat/LICENSE 

@luarss luarss requested a review from vvbandeira May 21, 2026 15:02
Copy LICENSE files from tool source trees into tools/install/licenses/
so they are included in the final image. Excludes tools/OpenROAD/src/sta.

Fixes: https://github.com/The-OpenROAD-Project/AutoTuner/issues/146
Signed-off-by: Jack Luar <jluar@precisioninno.com>
@luarss luarss force-pushed the feat/include-tool-licenses branch from 6c3efaf to de23328 Compare May 21, 2026 15:03
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the .dockerignore file to exclude build directories for OpenROAD, yosys-slang, and kepler-formal. It also modifies the Dockerfile.builder to automate the collection of license files from the tools source tree into the installation directory, while excluding specific paths. Feedback was provided to improve the robustness of the license collection script by excluding the destination directory from the search and using IFS= read -r to handle potential spaces in file paths.

Comment thread docker/Dockerfile.builder
Prevent find from re-discovering already-copied license files in the
install destination, and handle paths with spaces correctly.

Signed-off-by: Jack Luar <jluar@precisioninno.com>
@luarss luarss force-pushed the feat/include-tool-licenses branch from d36de44 to c1c6770 Compare May 21, 2026 15:09
@maliberty
Copy link
Copy Markdown
Member

Are you include those from OpenROAD?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants