mirror of
https://github.com/SFML/CSFML.git
synced 2026-10-26 21:16:13 +01:00
Compare commits
13
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ca3a852cf | ||
|
|
06dd3bc9b8 | ||
|
|
862ab6a449 | ||
|
|
9329dd8b60 | ||
|
|
c9bcd69cb7 | ||
|
|
a7b113ac5b | ||
|
|
72c1979aed | ||
|
|
4f75550692 | ||
|
|
fb9fb941b4 | ||
|
|
58b6342d1b | ||
|
|
e153a8a4ce | ||
|
|
17f42be80c | ||
|
|
586fb28b9d |
No files matched your search
@@ -79,7 +79,7 @@ jobs:
|
|||||||
path: CSFML
|
path: CSFML
|
||||||
|
|
||||||
- name: Build in an ARM container
|
- name: Build in an ARM container
|
||||||
uses: uraimo/run-on-arch-action@v2.7.2
|
uses: uraimo/run-on-arch-action@v2.8.1
|
||||||
with:
|
with:
|
||||||
arch: armv7
|
arch: armv7
|
||||||
distro: ubuntu22.04
|
distro: ubuntu22.04
|
||||||
@@ -111,7 +111,7 @@ jobs:
|
|||||||
path: CSFML
|
path: CSFML
|
||||||
|
|
||||||
- name: Build in an ARM64 container
|
- name: Build in an ARM64 container
|
||||||
uses: uraimo/run-on-arch-action@v2.7.2
|
uses: uraimo/run-on-arch-action@v2.8.1
|
||||||
with:
|
with:
|
||||||
arch: aarch64
|
arch: aarch64
|
||||||
distro: ubuntu22.04
|
distro: ubuntu22.04
|
||||||
|
|||||||
@@ -0,0 +1,314 @@
|
|||||||
|
name: Release Builds
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- 2.6.x
|
||||||
|
tags:
|
||||||
|
- "**"
|
||||||
|
workflow_dispatch: {}
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: release-${{github.ref}}
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
windows-x86:
|
||||||
|
name: Windows x86
|
||||||
|
runs-on: windows-2022
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Cache MinGW x86
|
||||||
|
id: mingw-x86-cache
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: ${{ github.workspace }}/mingw32
|
||||||
|
key: 14.2.0posix-19.1.1-12.0.0-ucrt-r2-x86
|
||||||
|
|
||||||
|
- name: Install MinGW x86
|
||||||
|
if: steps.mingw-x86-cache.outputs.cache-hit != 'true'
|
||||||
|
uses: bwoodsend/setup-winlibs-action@v1
|
||||||
|
id: winlibs-32
|
||||||
|
with:
|
||||||
|
tag: 14.2.0posix-19.1.1-12.0.0-ucrt-r2
|
||||||
|
with_clang: false
|
||||||
|
architecture: 32
|
||||||
|
destination: ${{ github.workspace }}
|
||||||
|
add_to_path: false
|
||||||
|
|
||||||
|
- name: Checkout SFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: SFML/SFML
|
||||||
|
ref: 3.0.0
|
||||||
|
path: SFML
|
||||||
|
|
||||||
|
- name: Checkout CSFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
path: CSFML
|
||||||
|
|
||||||
|
- name: Build SFML
|
||||||
|
run: |
|
||||||
|
cmake -S SFML -B SFML-build -A Win32 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/SFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build SFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Build CSFML
|
||||||
|
run: |
|
||||||
|
cmake -S CSFML -B CSFML-build -A Win32 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCSFML_LINK_SFML_STATICALLY=OFF -DCMAKE_BUILD_TYPE=Release -DSFML_ROOT=${{ github.workspace }}/SFML-install -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/CSFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build CSFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Add MinGW to PATH
|
||||||
|
shell: bash
|
||||||
|
run: echo "${{ github.workspace }}\mingw32\bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
|
- name: Generate Import Libs for MinGW
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
New-Item -ItemType "directory" -PATH "CSFML-install\lib\gcc"
|
||||||
|
New-Item -ItemType "directory" -PATH "CSFML-install\lib\msvc"
|
||||||
|
Move-Item -Path "CSFML-install\lib\*.lib" -Destination "CSFML-install\lib\msvc"
|
||||||
|
|
||||||
|
Push-Location CSFML-install\lib\gcc
|
||||||
|
& gendef.exe "..\..\bin\csfml-graphics-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-graphics-3.def" -D "..\..\bin\csfml-graphics-3.dll" -l "libcsfml-graphics.a"
|
||||||
|
Remove-Item -Path "csfml-graphics-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-window-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-window-3.def" -D "..\..\bin\csfml-window-3.dll" -l "libcsfml-window.a"
|
||||||
|
Remove-Item -Path "csfml-window-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-audio-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-audio-3.def" -D "..\..\bin\csfml-audio-3.dll" -l "libcsfml-audio.a"
|
||||||
|
Remove-Item -Path "csfml-audio-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-network-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-network-3.def" -D "..\..\bin\csfml-network-3.dll" -l "libcsfml-network.a"
|
||||||
|
Remove-Item -Path "csfml-network-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-system-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-system-3.def" -D "..\..\bin\csfml-system-3.dll" -l "libcsfml-system.a"
|
||||||
|
Remove-Item -Path "csfml-system-3.def"
|
||||||
|
Pop-Location
|
||||||
|
|
||||||
|
New-Item -ItemType "directory" -PATH "install\CSFML"
|
||||||
|
Move-Item -Path "CSFML-install\*" -Destination "install\CSFML"
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: CSFML-windows-32-bit
|
||||||
|
path: install/CSFML
|
||||||
|
|
||||||
|
windows-x64:
|
||||||
|
name: Windows x64
|
||||||
|
runs-on: windows-2022
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Cache MinGW x64
|
||||||
|
id: mingw-x64-cache
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: ${{ github.workspace }}/mingw64
|
||||||
|
key: 14.2.0posix-19.1.1-12.0.0-ucrt-r2-x64
|
||||||
|
|
||||||
|
- name: Install MinGW x64
|
||||||
|
if: steps.mingw-x64-cache.outputs.cache-hit != 'true'
|
||||||
|
uses: bwoodsend/setup-winlibs-action@v1
|
||||||
|
id: winlibs-64
|
||||||
|
with:
|
||||||
|
tag: 14.2.0posix-19.1.1-12.0.0-ucrt-r2
|
||||||
|
with_clang: false
|
||||||
|
architecture: 64
|
||||||
|
destination: ${{ github.workspace }}
|
||||||
|
add_to_path: false
|
||||||
|
|
||||||
|
- name: Checkout SFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: SFML/SFML
|
||||||
|
ref: 3.0.0
|
||||||
|
path: SFML
|
||||||
|
|
||||||
|
- name: Checkout CSFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
path: CSFML
|
||||||
|
|
||||||
|
- name: Build SFML
|
||||||
|
run: |
|
||||||
|
cmake -S SFML -B SFML-build -A x64 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/SFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build SFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Build CSFML
|
||||||
|
run: |
|
||||||
|
cmake -S CSFML -B CSFML-build -A x64 -G "Visual Studio 17 2022" -DBUILD_SHARED_LIBS=ON -DCSFML_LINK_SFML_STATICALLY=OFF -DCMAKE_BUILD_TYPE=Release -DSFML_ROOT=${{ github.workspace }}/SFML-install -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/CSFML-install -DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build CSFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Add MinGW to PATH
|
||||||
|
shell: bash
|
||||||
|
run: echo "${{ github.workspace }}\mingw64\bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
|
- name: Generate Import Libs for MinGW
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
New-Item -ItemType "directory" -PATH "CSFML-install\lib\gcc"
|
||||||
|
New-Item -ItemType "directory" -PATH "CSFML-install\lib\msvc"
|
||||||
|
Move-Item -Path "CSFML-install\lib\*.lib" -Destination "CSFML-install\lib\msvc"
|
||||||
|
|
||||||
|
Push-Location CSFML-install\lib\gcc
|
||||||
|
& gendef.exe "..\..\bin\csfml-graphics-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-graphics-3.def" -D "..\..\bin\csfml-graphics-3.dll" -l "libcsfml-graphics.a"
|
||||||
|
Remove-Item -Path "csfml-graphics-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-window-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-window-3.def" -D "..\..\bin\csfml-window-3.dll" -l "libcsfml-window.a"
|
||||||
|
Remove-Item -Path "csfml-window-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-audio-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-audio-3.def" -D "..\..\bin\csfml-audio-3.dll" -l "libcsfml-audio.a"
|
||||||
|
Remove-Item -Path "csfml-audio-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-network-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-network-3.def" -D "..\..\bin\csfml-network-3.dll" -l "libcsfml-network.a"
|
||||||
|
Remove-Item -Path "csfml-network-3.def"
|
||||||
|
|
||||||
|
& gendef.exe "..\..\bin\csfml-system-3.dll"
|
||||||
|
& dlltool.exe -d "csfml-system-3.def" -D "..\..\bin\csfml-system-3.dll" -l "libcsfml-system.a"
|
||||||
|
Remove-Item -Path "csfml-system-3.def"
|
||||||
|
Pop-Location
|
||||||
|
|
||||||
|
New-Item -ItemType "directory" -PATH "install\CSFML"
|
||||||
|
Move-Item -Path "CSFML-install\*" -Destination "install\CSFML"
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: CSFML-windows-64-bit
|
||||||
|
path: install/CSFML
|
||||||
|
|
||||||
|
macos-x64:
|
||||||
|
name: macOS x64
|
||||||
|
runs-on: macos-13
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout SFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: SFML/SFML
|
||||||
|
ref: 3.0.0
|
||||||
|
path: SFML
|
||||||
|
|
||||||
|
- name: Checkout CSFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
path: CSFML
|
||||||
|
|
||||||
|
- name: Build SFML
|
||||||
|
run: |
|
||||||
|
cmake -S SFML -B SFML-build -G "Unix Makefiles" \
|
||||||
|
-DCMAKE_C_COMPILER="/usr/bin/clang" \
|
||||||
|
-DCMAKE_CXX_COMPILER="/usr/bin/clang++" \
|
||||||
|
-DCMAKE_C_FLAGS="-stdlib=libc++" \
|
||||||
|
-DCMAKE_CXX_FLAGS="-stdlib=libc++" \
|
||||||
|
-DBUILD_SHARED_LIBS=ON \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/SFML-install \
|
||||||
|
-DCMAKE_OSX_ARCHITECTURES=x86_64 \
|
||||||
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 \
|
||||||
|
-DSFML_BUILD_FRAMEWORKS=OFF \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build SFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Build CSFML
|
||||||
|
run: |
|
||||||
|
cmake -S CSFML -B CSFML-build -G "Unix Makefiles" \
|
||||||
|
-DCMAKE_C_COMPILER="/usr/bin/clang" \
|
||||||
|
-DCMAKE_CXX_COMPILER="/usr/bin/clang++" \
|
||||||
|
-DCMAKE_C_FLAGS="-stdlib=libc++" \
|
||||||
|
-DCMAKE_CXX_FLAGS="-stdlib=libc++" \
|
||||||
|
-DBUILD_SHARED_LIBS=ON \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/CSFML-install \
|
||||||
|
-DCMAKE_OSX_ARCHITECTURES=x86_64 \
|
||||||
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 \
|
||||||
|
-DSFML_ROOT=${{ github.workspace }}/SFML-install \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build CSFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Create Archive
|
||||||
|
run: |
|
||||||
|
mkdir CSFML-macOS-clang-64-bit
|
||||||
|
cp -R CSFML-install/include CSFML-macOS-clang-64-bit
|
||||||
|
cp -R CSFML-install/lib CSFML-macOS-clang-64-bit
|
||||||
|
cp CSFML-install/share/CSFML/* CSFML-macOS-clang-64-bit
|
||||||
|
tar -zcvf CSFML-macOS-clang-64-bit.tar.gz CSFML-macOS-clang-64-bit
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: CSFML-macOS-clang-64-bit
|
||||||
|
path: CSFML-macOS-clang-64-bit.tar.gz
|
||||||
|
|
||||||
|
macos-arm64:
|
||||||
|
name: macOS ARM64
|
||||||
|
runs-on: macos-14
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout SFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: SFML/SFML
|
||||||
|
ref: 3.0.0
|
||||||
|
path: SFML
|
||||||
|
|
||||||
|
- name: Checkout CSFML
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
path: CSFML
|
||||||
|
- name: Build SFML
|
||||||
|
run: |
|
||||||
|
cmake -S SFML -B SFML-build -G "Unix Makefiles" \
|
||||||
|
-DCMAKE_C_COMPILER="/usr/bin/clang" \
|
||||||
|
-DCMAKE_CXX_COMPILER="/usr/bin/clang++" \
|
||||||
|
-DCMAKE_C_FLAGS="-stdlib=libc++" \
|
||||||
|
-DCMAKE_CXX_FLAGS="-stdlib=libc++" \
|
||||||
|
-DBUILD_SHARED_LIBS=ON \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/SFML-install \
|
||||||
|
-DCMAKE_OSX_ARCHITECTURES=arm64 \
|
||||||
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
||||||
|
-DSFML_BUILD_FRAMEWORKS=OFF \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build SFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Build CSFML
|
||||||
|
run: |
|
||||||
|
cmake -S CSFML -B CSFML-build -G "Unix Makefiles" \
|
||||||
|
-DCMAKE_C_COMPILER="/usr/bin/clang" \
|
||||||
|
-DCMAKE_CXX_COMPILER="/usr/bin/clang++" \
|
||||||
|
-DCMAKE_C_FLAGS="-stdlib=libc++" \
|
||||||
|
-DCMAKE_CXX_FLAGS="-stdlib=libc++" \
|
||||||
|
-DBUILD_SHARED_LIBS=ON \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/CSFML-install \
|
||||||
|
-DCMAKE_OSX_ARCHITECTURES=arm64 \
|
||||||
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0 \
|
||||||
|
-DSFML_ROOT=${{ github.workspace }}/SFML-install \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=ON
|
||||||
|
cmake --build CSFML-build --config Release --target install
|
||||||
|
|
||||||
|
- name: Create Archive
|
||||||
|
run: |
|
||||||
|
mkdir CSFML-macOS-clang-arm64
|
||||||
|
cp -R CSFML-install/include CSFML-macOS-clang-arm64
|
||||||
|
cp -R CSFML-install/lib CSFML-macOS-clang-arm64
|
||||||
|
cp CSFML-install/share/CSFML/* CSFML-macOS-clang-arm64
|
||||||
|
tar -zcvf CSFML-macOS-clang-arm64.tar.gz CSFML-macOS-clang-arm64
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: CSFML-macOS-clang-arm64
|
||||||
|
path: CSFML-macOS-clang-arm64.tar.gz
|
||||||
+2
-2
@@ -38,8 +38,8 @@ add_custom_target(doc ALL
|
|||||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
|
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html
|
||||||
DESTINATION ${INSTALL_MISC_DIR}/doc
|
DESTINATION ${INSTALL_MISC_DIR}/doc
|
||||||
COMPONENT doc)
|
COMPONENT doc)
|
||||||
if(DOXYGEN_HHC_PROGRAM)
|
if(DOXYGEN_GENERATE_HTMLHELP)
|
||||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/CSFML.chm
|
install(FILES ${DOXYGEN_OUTPUT_DIR}/CSFML.chm
|
||||||
DESTINATION ${INSTALL_MISC_DIR}/doc
|
DESTINATION ${INSTALL_MISC_DIR}/doc
|
||||||
COMPONENT doc)
|
COMPONENT doc)
|
||||||
endif()
|
endif()
|
||||||
+2
-2
@@ -1,7 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
VERSION="2.6.1"
|
VERSION="3.0.0"
|
||||||
VERSION_C="2.6.0"
|
VERSION_C="3.0.0"
|
||||||
# BUILD_CSFML=FALSE
|
# BUILD_CSFML=FALSE
|
||||||
BUILD_CSFML=TRUE
|
BUILD_CSFML=TRUE
|
||||||
BUILD_SFML=FALSE
|
BUILD_SFML=FALSE
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ echo "Please note that all SFML dependencies must be installed and available to
|
|||||||
|
|
||||||
RID="$1"
|
RID="$1"
|
||||||
|
|
||||||
SFMLBranch="master" # The branch or tag of the SFML repository to be cloned
|
SFMLBranch="3.0.0" # The branch or tag of the SFML repository to be cloned
|
||||||
CSFMLDir="$(realpath ../../)" # The directory of the source code of CSFML
|
CSFMLDir="$(realpath ../../)" # The directory of the source code of CSFML
|
||||||
|
|
||||||
OutDir="./CSFML/runtimes/$RID/native" # The base directory of all CSFML modules, used to copy the final libraries
|
OutDir="./CSFML/runtimes/$RID/native" # The base directory of all CSFML modules, used to copy the final libraries
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ echo "Please note that all SFML dependencies must be installed and available to
|
|||||||
|
|
||||||
RID="$1"
|
RID="$1"
|
||||||
|
|
||||||
SFMLBranch="master" # The branch or tag of the SFML repository to be cloned
|
SFMLBranch="3.0.0" # The branch or tag of the SFML repository to be cloned
|
||||||
CSFMLDir="$(grealpath "$(git rev-parse --show-toplevel)")" # The directory of the source code of CSFML
|
CSFMLDir="$(grealpath "$(git rev-parse --show-toplevel)")" # The directory of the source code of CSFML
|
||||||
|
|
||||||
OutDir="./CSFML/runtimes/$RID/native" # The base directory of all CSFML modules, used to copy the final libraries
|
OutDir="./CSFML/runtimes/$RID/native" # The base directory of all CSFML modules, used to copy the final libraries
|
||||||
@@ -146,39 +146,12 @@ cmake -E env \
|
|||||||
"$CSFMLDir"
|
"$CSFMLDir"
|
||||||
cmake --build . --config Release --target install
|
cmake --build . --config Release --target install
|
||||||
|
|
||||||
# ============================ #
|
# ======================================== #
|
||||||
# STEP 5: Fix RPATH references #
|
# STEP 5: Copy result to the NuGet folders #
|
||||||
# ============================ #
|
# ======================================== #
|
||||||
|
|
||||||
SFMLMajorMinor="3.0"
|
SFMLMajorMinor="3.0"
|
||||||
SFMLMajorMinorPatch="$SFMLMajorMinor.0"
|
SFMLMajorMinorPatch="$SFMLMajorMinor.0"
|
||||||
|
|
||||||
# SFML's framework dependencies will always reference @rpath/../Frameworks/<depedency>
|
|
||||||
# Which is not where we place the frameworks and where SFML should look for them
|
|
||||||
# This this fixes the dependency with install_name_tool
|
|
||||||
fixrpath()
|
|
||||||
{
|
|
||||||
MODULE="$1"
|
|
||||||
OLD="$2"
|
|
||||||
NEW="$3"
|
|
||||||
|
|
||||||
install_name_tool -change $OLD $NEW "$SFMLLibDir/libsfml-$MODULE.dylib"
|
|
||||||
install_name_tool -change $OLD $NEW "$SFMLLibDir/libsfml-$MODULE.$SFMLMajorMinor.dylib"
|
|
||||||
install_name_tool -change $OLD $NEW "$SFMLLibDir/libsfml-$MODULE.$SFMLMajorMinorPatch.dylib"
|
|
||||||
}
|
|
||||||
|
|
||||||
fixrpath audio "@rpath/../Frameworks/vorbisenc.framework/Versions/A/vorbisenc" "@rpath/vorbisenc.framework/Versions/A/vorbisen"
|
|
||||||
fixrpath audio "@rpath/../Frameworks/vorbisfile.framework/Versions/A/vorbisfile" "@rpath/vorbisfile.framework/Versions/A/vorbisfile"
|
|
||||||
fixrpath audio "@rpath/../Frameworks/vorbis.framework/Versions/A/vorbis" "@rpath/vorbis.framework/Versions/A/vorbis"
|
|
||||||
fixrpath audio "@rpath/../Frameworks/ogg.framework/Versions/A/ogg" "@rpath/ogg.framework/Versions/A/ogg"
|
|
||||||
fixrpath audio "@rpath/../Frameworks/FLAC.framework/Versions/A/FLAC" "@rpath/FLAC.framework/Versions/A/FLAC"
|
|
||||||
|
|
||||||
fixrpath graphics "@rpath/../Frameworks/freetype.framework/Versions/A/freetype" "@rpath/freetype.framework/Versions/A/freetype"
|
|
||||||
|
|
||||||
# ======================================== #
|
|
||||||
# STEP 6: Copy result to the NuGet folders #
|
|
||||||
# ======================================== #
|
|
||||||
|
|
||||||
CSFMLMajorMinor="3.0"
|
CSFMLMajorMinor="3.0"
|
||||||
CSFMLMajorMinorPatch="$CSFMLMajorMinor.0"
|
CSFMLMajorMinorPatch="$CSFMLMajorMinor.0"
|
||||||
|
|
||||||
@@ -208,8 +181,6 @@ copymodule graphics
|
|||||||
copymodule system
|
copymodule system
|
||||||
copymodule window
|
copymodule window
|
||||||
|
|
||||||
cp -R "$SFMLLibDir/lib/"*.framework "$OutDir"
|
|
||||||
|
|
||||||
popd # Pop CSFML
|
popd # Pop CSFML
|
||||||
popd # Pop $RID
|
popd # Pop $RID
|
||||||
popd # Pop Build
|
popd # Pop Build
|
||||||
@@ -35,7 +35,7 @@ Write-Output "Building $RID"
|
|||||||
Write-Output "Using $Generator as the cmake generator"
|
Write-Output "Using $Generator as the cmake generator"
|
||||||
Write-Output "Using architecture $Architecture"
|
Write-Output "Using architecture $Architecture"
|
||||||
|
|
||||||
$SFMLBranch = "master" # The branch or tag of the SFML repository to be cloned
|
$SFMLBranch = "3.0.0" # The branch or tag of the SFML repository to be cloned
|
||||||
$CSFMLDir = (Get-Item (git rev-parse --show-toplevel)).FullName # The directory of the source code of CSFML
|
$CSFMLDir = (Get-Item (git rev-parse --show-toplevel)).FullName # The directory of the source code of CSFML
|
||||||
|
|
||||||
$OutDir = "./CSFML/runtimes/$RID/native" # The directory of all CSFML modules, used to copy the final dlls
|
$OutDir = "./CSFML/runtimes/$RID/native" # The directory of all CSFML modules, used to copy the final dlls
|
||||||
@@ -83,17 +83,9 @@ Push-Location "SFML"
|
|||||||
|
|
||||||
$SFMLDir = (Get-Item .).FullName
|
$SFMLDir = (Get-Item .).FullName
|
||||||
|
|
||||||
switch ($RID) {
|
IF ($RID -ne 'win-x86' -and $RID -ne 'win-x64') {
|
||||||
'win-x86' {
|
Write-Error "Unknown RID '$RID'"
|
||||||
$SFMLExtLibs = (Get-Item ./extlibs/libs-msvc-universal/x86).FullName
|
exit
|
||||||
}
|
|
||||||
'win-x64' {
|
|
||||||
$SFMLExtLibs = (Get-Item ./extlibs/libs-msvc-universal/x64).FullName
|
|
||||||
}
|
|
||||||
Default {
|
|
||||||
Write-Error "Unknown RID '$RID'"
|
|
||||||
exit
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Pop-Location # Pop SFML
|
Pop-Location # Pop SFML
|
||||||
@@ -142,7 +134,6 @@ $CSFMLLibDir = (Get-Item lib).FullName; # The directory where the final CSFML dl
|
|||||||
cmake `
|
cmake `
|
||||||
"-DSFML_ROOT=$SFMLInstallDir" `
|
"-DSFML_ROOT=$SFMLInstallDir" `
|
||||||
'-DCSFML_LINK_SFML_STATICALLY=OFF' `
|
'-DCSFML_LINK_SFML_STATICALLY=OFF' `
|
||||||
"-DCMAKE_LIBRARY_PATH=$SFMLExtLibs" `
|
|
||||||
`
|
`
|
||||||
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=$CSFMLLibDir" `
|
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=$CSFMLLibDir" `
|
||||||
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=$CSFMLLibDir" `
|
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=$CSFMLLibDir" `
|
||||||
|
|||||||
Reference in new issue
Block a user