Skip to content

update respet and eqadet and remove AVX from windows build #31

update respet and eqadet and remove AVX from windows build

update respet and eqadet and remove AVX from windows build #31

Workflow file for this run

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}}