diff --git a/.github/workflows/source-vendor.yml b/.github/workflows/source-vendor.yml new file mode 100644 index 00000000000..0d27dbb6b8f --- /dev/null +++ b/.github/workflows/source-vendor.yml @@ -0,0 +1,28 @@ +name: Checkout and Create Clean Tarball + +on: [push, pull_request] + +jobs: + create-clean-tarball: + runs-on: ubuntu-latest + steps: + - name: Checkout repository with submodules + uses: actions/checkout@v3 + 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 + ' + tar --concatenate --file=yosys-src-vendored.tar vendor-*.tar + gzip yosys-src-vendored.tar + + - name: Store tarball artifact + uses: actions/upload-artifact@v3 + with: + name: clean-sources-tarball + path: yosys-src-vendored.tar.gz + retention-days: 1 diff --git a/.gitmodules b/.gitmodules index 883965b40d7..9f18be11e8d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,7 @@ [submodule "abc"] path = 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 url = https://github.com/jarro2783/cxxopts