update respet and eqadet and remove AVX from windows build #31
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
push: | |
tags: | |
- 'v**' | |
permissions: | |
contents: write | |
env: | |
BUILD_TYPE: Release | |
jobs: | |
build_linux_x86-64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Packages | |
run: sudo apt install -y libboost-dev libeigen3-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev | |
- name: Build Libint | |
run: ./script/libint.sh | |
- name: Configure Acorn | |
run: cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_COMPILER=g++ | |
- name: Build Acorn | |
run: | | |
export CPLUS_INCLUDE_PATH="$PWD/libint/install/include:$CPLUS_INCLUDE_PATH" | |
export LIBRARY_PATH="$PWD/libint/install/lib:$LIBRARY_PATH" | |
cmake --build build --parallel 2 | |
- name: Copy Libint | |
run: cp $PWD/libint/install/lib/libint2.a bin/libint_linux_x86-64.a | |
- name: Rename Binaries | |
run: | | |
mv bin/acorn_centerxyz bin/acorn_centerxyz_linux_x86-64 | |
mv bin/acorn_makemov bin/acorn_makemov_linux_x86-64 | |
mv bin/acorn_view bin/acorn_view_linux_x86-64 | |
mv bin/acorn bin/acorn_linux_x86-64 | |
mv bin/libacorn.a bin/libacorn_linux_x86-64.a | |
mv bin/libfftw3.a bin/libfftw_linux_x86-64.a | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: linux | |
path: | | |
bin/acorn_centerxyz_linux_x86-64 | |
bin/acorn_makemov_linux_x86-64 | |
bin/acorn_view_linux_x86-64 | |
bin/acorn_linux_x86-64 | |
bin/libacorn_linux_x86-64.a | |
bin/libfftw_linux_x86-64.a | |
bin/libint_linux_x86-64.a | |
build_windows_x86-64: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Packages | |
run: pip install jinja2 | |
- name: Configure Acorn | |
run: cmake -B build -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=g++ -DSTANDALONE=ON | |
- name: Build Acorn | |
run: cmake --build build --parallel 2 | |
- name: Rename Binaries | |
run: | | |
mv bin/acorn_centerxyz.exe bin/acorn_centerxyz_windows_x86-64.exe | |
mv bin/acorn_view.exe bin/acorn_view_windows_x86-64.exe | |
mv bin/acorn_makemov.exe bin/acorn_makemov_windows_x86-64.exe | |
mv bin/acorn.exe bin/acorn_windows_x86-64.exe | |
mv bin/libacorn.a bin/libacorn_windows_x86-64.a | |
mv bin/libfftw3.a bin/libfftw_windows_x86-64.a | |
mv bin/libint2.a bin/libint_windows_x86-64.a | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: windows | |
path: | | |
bin/acorn_centerxyz_windows_x86-64.exe | |
bin/acorn_makemov_windows_x86-64.exe | |
bin/acorn_view_windows_x86-64.exe | |
bin/acorn_windows_x86-64.exe | |
bin/libacorn_windows_x86-64.a | |
bin/libfftw_windows_x86-64.a | |
bin/libint_windows_x86-64.a | |
release: | |
runs-on: ubuntu-latest | |
needs: [build_linux_x86-64, build_windows_x86-64] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
- name: Display Structure of Downloaded Files | |
run: ls -R | |
- name: Create Library Directory and Remove Redundant Scripts | |
run: mkdir library && rm example/generate.sh | |
- name: Generate the Header Only Library | |
run: ./script/headeronly.sh > library/acorn.h | |
- name: Copy x86-64 Linux Binaries to the Root Folder | |
run: | | |
cp linux/acorn_centerxyz_linux_x86-64 acorn_centerxyz | |
cp linux/acorn_makemov_linux_x86-64 acorn_makemov | |
cp linux/acorn_view_linux_x86-64 acorn_view | |
cp linux/acorn_linux_x86-64 acorn | |
cp linux/libacorn_linux_x86-64.a library/libacorn.a | |
cp linux/libfftw_linux_x86-64.a library/libfftw.a | |
cp linux/libint_linux_x86-64.a library/libint.a | |
- name: Create x86-64 Linux Packages | |
run: | | |
tar -czf acorn_linux_x86-64.tar.gz acorn acorn_centerxyz acorn_makemov acorn_view basis example interface library script/compress.py script/decompress.py script/plotmat.py script/plottraj.py script/plotwfn.py LICENSE.md | |
- name: Copy x86-64 Windows Binaries to the Root Folder | |
run: | | |
cp windows/acorn_centerxyz_windows_x86-64.exe acorn_centerxyz.exe | |
cp windows/acorn_makemov_windows_x86-64.exe acorn_makemov.exe | |
cp windows/acorn_view_windows_x86-64.exe acorn_view.exe | |
cp windows/acorn_windows_x86-64.exe acorn.exe | |
cp windows/libacorn_windows_x86-64.a library/libacorn.a | |
cp windows/libfftw_windows_x86-64.a library/libfftw.a | |
cp windows/libint_windows_x86-64.a library/libint.a | |
- name: Create x86-64 Windows Packages | |
run: | | |
tar -czf acorn_windows_x86-64.tar.gz acorn.exe acorn_centerxyz.exe acorn_makemov.exe acorn_view.exe basis example interface library script/compress.py script/decompress.py script/plotmat.py script/plottraj.py script/plotwfn.py LICENSE.md | |
- name: Release linux_x86-64 Version of Acorn | |
uses: svenstaro/upload-release-action@v2 | |
with: | |
repo_token: ${{secrets.GITHUB_TOKEN}} | |
file: acorn_linux_x86-64.tar.gz | |
tag: ${{github.ref}} | |
- name: Release windows_x86-64 Version of Acorn | |
uses: svenstaro/upload-release-action@v2 | |
with: | |
repo_token: ${{secrets.GITHUB_TOKEN}} | |
file: acorn_windows_x86-64.tar.gz | |
tag: ${{github.ref}} |