diff --git a/.github/workflows/windows_arm_debug.yml b/.github/workflows/windows_arm_debug.yml new file mode 100644 index 0000000..09bb057 --- /dev/null +++ b/.github/workflows/windows_arm_debug.yml @@ -0,0 +1,86 @@ +name: Windows-ARM-Debug + +permissions: + contents: read + pull-requests: write + +on: + push: + paths-ignore: + - 'README.md' + - 'doc/**' + pull_request: + paths-ignore: + - 'README.md' + - 'doc/**' + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Debug + +jobs: + + build-openexr3: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: windows-11-arm + + steps: + + - name: install dependencies - Imath + run: | + cd .. + git clone https://github.com/AcademySoftwareFoundation/Imath.git && + cd Imath && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - name: install dependencies - zlib + run: | + cd .. + git clone https://github.com/madler/zlib.git && + cd zlib && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - name: install dependencies - openexr + run: | + cd .. + git clone https://github.com/AcademySoftwareFoundation/openexr.git && + cd openexr && + git checkout RB-3.1 && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DBUILD_TESTING=OFF -DOPENEXR_BUILD_TOOLS=OFF -DOPENEXR_INSTALL_EXAMPLES=OFF -D "CMAKE_PREFIX_PATH=${{github.workspace}}/../Imath/install/;${{github.workspace}}/../zlib/install/;${{github.workspace}}/../openexr/install/" && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - uses: actions/checkout@v4 + + - name: Configure CMake + # # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_PREFIX_PATH=${{github.workspace}}/../Imath/install/;${{github.workspace}}/../zlib/install/;${{github.workspace}}/../openexr/install/" + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Install + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --target install --config ${{env.BUILD_TYPE}} + working-directory: ${{github.workspace}} + + # - name: Test + # working-directory: ${{github.workspace}}/build + # run: ctest -V --output-on-failure -C ${{env.BUILD_TYPE}} \ No newline at end of file diff --git a/.github/workflows/windows_arm_release.yml b/.github/workflows/windows_arm_release.yml new file mode 100644 index 0000000..3a943be --- /dev/null +++ b/.github/workflows/windows_arm_release.yml @@ -0,0 +1,86 @@ +name: Windows-ARM-Release + +permissions: + contents: read + pull-requests: write + +on: + push: + paths-ignore: + - 'README.md' + - 'doc/**' + pull_request: + paths-ignore: + - 'README.md' + - 'doc/**' + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Release + +jobs: + + build-openexr3: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: windows-11-arm + + steps: + + - name: install dependencies - Imath + run: | + cd .. + git clone https://github.com/AcademySoftwareFoundation/Imath.git && + cd Imath && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - name: install dependencies - zlib + run: | + cd .. + git clone https://github.com/madler/zlib.git && + cd zlib && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - name: install dependencies - openexr + run: | + cd .. + git clone https://github.com/AcademySoftwareFoundation/openexr.git && + cd openexr && + git checkout RB-3.1 && + mkdir build && + mkdir install && + cd build && + cmake .. -D"CMAKE_INSTALL_PREFIX=../install" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DBUILD_TESTING=OFF -DOPENEXR_BUILD_TOOLS=OFF -DOPENEXR_INSTALL_EXAMPLES=OFF -D "CMAKE_PREFIX_PATH=${{github.workspace}}/../Imath/install/;${{github.workspace}}/../zlib/install/;${{github.workspace}}/../openexr/install/" && + cmake --build . --config ${{env.BUILD_TYPE}} && + cmake --build . --target install --config ${{env.BUILD_TYPE}} + + - uses: actions/checkout@v4 + + - name: Configure CMake + # # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_PREFIX_PATH=${{github.workspace}}/../Imath/install/;${{github.workspace}}/../zlib/install/;${{github.workspace}}/../openexr/install/" + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Install + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --target install --config ${{env.BUILD_TYPE}} + working-directory: ${{github.workspace}} + + # - name: Test + # working-directory: ${{github.workspace}}/build + # run: ctest -V --output-on-failure -C ${{env.BUILD_TYPE}} \ No newline at end of file diff --git a/.github/workflows/windows_arm_vcpkg_debug.yml b/.github/workflows/windows_arm_vcpkg_debug.yml new file mode 100644 index 0000000..d4f4476 --- /dev/null +++ b/.github/workflows/windows_arm_vcpkg_debug.yml @@ -0,0 +1,97 @@ +name: Windows-ARM_vcpkg-Debug + +permissions: + contents: read + pull-requests: write + +on: + push: + paths-ignore: + - 'README.md' + - 'doc/**' + pull_request: + paths-ignore: + - 'README.md' + - 'doc/**' + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Debug + +jobs: + + build: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: windows-11-arm + + steps: + + - name: install dependencies - imath + run: vcpkg install imath + + - name: install dependencies - openexr + run: vcpkg install openexr + + - name: install dependencies - tiff + run: vcpkg install tiff + + - name: check vcpkg install status + run: vcpkg list + + - uses: actions/checkout@v4 + + - name: Configure CMake + # # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake" + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Install + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --target install --config ${{env.BUILD_TYPE}} + working-directory: ${{github.workspace}} + + test: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: windows-11-arm + + steps: + + - name: install dependencies - imath + run: vcpkg install imath + + - name: install dependencies - openexr + run: vcpkg install openexr + + - name: install dependencies - tiff + run: vcpkg install tiff + + - name: check vcpkg install status + run: vcpkg list + + - uses: actions/checkout@v4 + + - name: Configure CMake + # # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake" + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Install + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --target install --config ${{env.BUILD_TYPE}} + working-directory: ${{github.workspace}} + + - name: Test + working-directory: ${{github.workspace}}/build + run: ctest -V --output-on-failure -C ${{env.BUILD_TYPE}} \ No newline at end of file diff --git a/.github/workflows/windows_arm_vcpkg_release.yml b/.github/workflows/windows_arm_vcpkg_release.yml new file mode 100644 index 0000000..a39acc7 --- /dev/null +++ b/.github/workflows/windows_arm_vcpkg_release.yml @@ -0,0 +1,61 @@ +name: Windows-ARM-vcpkg-Release + +permissions: + contents: read + pull-requests: write + +on: + push: + paths-ignore: + - 'README.md' + - 'doc/**' + pull_request: + paths-ignore: + - 'README.md' + - 'doc/**' + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Release + +jobs: + + build: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: windows-11-arm + + steps: + + - name: install dependencies - imath + run: vcpkg install imath + + - name: install dependencies - openexr + run: vcpkg install openexr + + - name: install dependencies - tiff + run: vcpkg install tiff + + - name: check vcpkg install status + run: vcpkg list + + - uses: actions/checkout@v4 + + - name: Configure CMake + # # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -D "CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake" + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} + + - name: Install + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --target install --config ${{env.BUILD_TYPE}} + working-directory: ${{github.workspace}} + + - name: Test + working-directory: ${{github.workspace}}/build + run: ctest -V --output-on-failure -C ${{env.BUILD_TYPE}}