Merge pull request #4668 from YosysHQ/emil/vendor-submodules

actions: vendor sources with submodules for releases
This commit is contained in:
Emil J 2024-10-21 15:37:51 +02:00 committed by GitHub
commit c1907ef5b7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 38 additions and 1 deletions

33
.github/workflows/source-vendor.yml vendored Normal file
View File

@ -0,0 +1,33 @@
name: Create source archive with vendored dependencies
on: [push, workflow_dispatch]
jobs:
vendor-sources:
runs-on: ubuntu-latest
steps:
- name: Checkout repository with submodules
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Create clean tarball
run: |
git archive --format=tar HEAD -o yosys-src-vendored.tar
git submodule foreach '
git archive --format=tar --prefix="${sm_path}/" HEAD --output=${toplevel}/vendor-${name}.tar
'
# 2008 bug https://lists.gnu.org/archive/html/bug-tar/2008-08/msg00002.html
for file in vendor-*.tar; do
tar --concatenate --file=yosys-src-vendored.tar "$file"
done
gzip yosys-src-vendored.tar
- name: Store tarball artifact
uses: actions/upload-artifact@v4
with:
name: vendored-sources
path: yosys-src-vendored.tar.gz
retention-days: 1

3
.gitmodules vendored
View File

@ -1,6 +1,7 @@
[submodule "abc"] [submodule "abc"]
path = abc path = abc
url = https://github.com/YosysHQ/abc url = https://github.com/YosysHQ/abc
[submodule "libs/cxxopts"] # Don't use paths as names to avoid git archive problems
[submodule "cxxopts"]
path = libs/cxxopts path = libs/cxxopts
url = https://github.com/jarro2783/cxxopts url = https://github.com/jarro2783/cxxopts

View File

@ -33,6 +33,9 @@ Yosys is free software licensed under the ISC license (a GPL
compatible license that is similar in terms to the MIT license compatible license that is similar in terms to the MIT license
or the 2-clause BSD license). or the 2-clause BSD license).
Third-party software distributed alongside this software
is licensed under compatible licenses.
Please refer to `abc` and `libs` subdirectories for their license terms.
Web Site and Other Resources Web Site and Other Resources
============================ ============================