mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-04 22:07:52 +00:00
ci(build): support Ubuntu 26.04 (#25836)
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com> Co-authored-by: sudlud <sudlud@users.noreply.github.com>
This commit is contained in:
8
.github/SECURITY.md
vendored
8
.github/SECURITY.md
vendored
@@ -23,10 +23,10 @@ We support the following versions of dependencies.
|
||||
### Supported Operating Systems
|
||||
|
||||
| Linux (Ubuntu) | Status | Recommended |
|
||||
| :------------- | :----------------: | :------------------: |
|
||||
| 24.04 | :white_check_mark: | :large_blue_diamond: |
|
||||
| 22.04 | :white_check_mark: | |
|
||||
| 20.04 ≤ | :red_circle: | |
|
||||
|:---------------| :----------------: | :------------------: |
|
||||
| 26.04 | :white_check_mark: | :large_blue_diamond: |
|
||||
| 24.04 | :white_check_mark: | |
|
||||
| 22.04 ≤ | :red_circle: | |
|
||||
|
||||
| macOS | Status | Recommended |
|
||||
| :---- | :----------------: | :------------------: |
|
||||
|
||||
23
.github/actions/linux-build/action.yml
vendored
23
.github/actions/linux-build/action.yml
vendored
@@ -64,23 +64,14 @@ runs:
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt remove needrestart #refer: https://github.com/actions/runner-images/issues/9937
|
||||
sudo apt-get -y install ccache clang cmake curl google-perftools \
|
||||
libmysqlclient-dev make unzip build-essential cmake-data \
|
||||
libboost-all-dev libbz2-dev libncurses5-dev libmysql++-dev \
|
||||
sudo apt-get -y install ccache clang cmake curl \
|
||||
make unzip build-essential cmake-data \
|
||||
libboost-all-dev libbz2-dev libmysql++-dev \
|
||||
libreadline6-dev libssl-dev libtool openssl zlib1g-dev
|
||||
|
||||
# Account for https://github.com/actions/runner-images/issues/8659
|
||||
# based off of https://github.com/actions/runner-images/issues/8659#issuecomment-1852353116
|
||||
UBUNTU_VERSION="$(grep VERSION_ID /etc/os-release | cut -f2 -d\")"
|
||||
source /etc/os-release
|
||||
if [[ "$VERSION_CODENAME" == "jammy" ]]; then
|
||||
if [[ "${{ inputs.CC }}" =~ "clang-" ]]; then
|
||||
CLANG_VERSION="$(echo '${{ inputs.CC }}' | cut -f2 -d\-)"
|
||||
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
sudo add-apt-repository "deb http://apt.llvm.org/$VERSION_CODENAME/ llvm-toolchain-$VERSION_CODENAME-$CLANG_VERSION main"
|
||||
sudo apt-get -qq update
|
||||
sudo apt-get -qq install '${{ inputs.CC }}'
|
||||
fi
|
||||
if [[ "$(lsb_release -sr)" == "26.04" ]]; then
|
||||
sudo apt-get -y install libgoogle-perftools-dev default-libmysqlclient-dev
|
||||
else
|
||||
sudo apt-get -y install google-perftools libmysqlclient-dev libncurses5-dev
|
||||
fi
|
||||
|
||||
- name: setup ccache
|
||||
|
||||
8
.github/workflows/core-build-nopch.yml
vendored
8
.github/workflows/core-build-nopch.yml
vendored
@@ -30,10 +30,6 @@ jobs:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: clang-15
|
||||
CXX: clang++-15
|
||||
- os: ubuntu-24.04
|
||||
compiler:
|
||||
CC: clang-18
|
||||
@@ -42,6 +38,10 @@ jobs:
|
||||
compiler:
|
||||
CC: gcc-14
|
||||
CXX: g++-14
|
||||
- os: ubuntu-26.04
|
||||
compiler:
|
||||
CC: clang-20
|
||||
CXX: clang++-20
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler.CC }}-nopch
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
|
||||
8
.github/workflows/core-build-pch.yml
vendored
8
.github/workflows/core-build-pch.yml
vendored
@@ -30,14 +30,14 @@ jobs:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-22.04
|
||||
compiler:
|
||||
CC: clang-15
|
||||
CXX: clang++-15
|
||||
- os: ubuntu-24.04
|
||||
compiler:
|
||||
CC: clang-18
|
||||
CXX: clang++-18
|
||||
- os: ubuntu-26.04
|
||||
compiler:
|
||||
CC: clang-20
|
||||
CXX: clang++-20
|
||||
runs-on: ${{ matrix.os }}
|
||||
name: ${{ matrix.os }}-${{ matrix.compiler.CC }}-pch
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
|
||||
4
.github/workflows/dashboard-ci.yml
vendored
4
.github/workflows/dashboard-ci.yml
vendored
@@ -41,8 +41,8 @@ jobs:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-22.04
|
||||
- os: ubuntu-24.04
|
||||
- os: ubuntu-26.04
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
@@ -73,8 +73,8 @@ jobs:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
include:
|
||||
- os: ubuntu-22.04
|
||||
- os: ubuntu-24.04
|
||||
- os: ubuntu-26.04
|
||||
runs-on: ${{ matrix.os }}
|
||||
if: github.repository == 'azerothcore/azerothcore-wotlk' && !github.event.pull_request.draft
|
||||
steps:
|
||||
|
||||
@@ -12,15 +12,15 @@ fi
|
||||
UBUNTU_VERSION=$(lsb_release -sr);
|
||||
|
||||
case $UBUNTU_VERSION in
|
||||
"22.04")
|
||||
;;
|
||||
"24.04")
|
||||
;;
|
||||
"26.04")
|
||||
;;
|
||||
*)
|
||||
echo "########## ########## ##########"
|
||||
echo ""
|
||||
echo " using unsupported Ubuntu version " $UBUNTU_VERSION
|
||||
echo " please update to Ubuntu 22.04 or later"
|
||||
echo " please update to Ubuntu 24.04 or later"
|
||||
echo ""
|
||||
echo "########## ########## ##########"
|
||||
;;
|
||||
@@ -30,21 +30,32 @@ $SUDO apt update
|
||||
|
||||
# shared deps
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO \
|
||||
apt-get -y install ccache clang cmake curl google-perftools libmysqlclient-dev make unzip jq screen tmux \
|
||||
libreadline-dev libncurses5-dev libncursesw5-dev libbz2-dev git gcc g++ libssl-dev \
|
||||
apt-get -y install ccache clang cmake curl make unzip jq screen tmux \
|
||||
libreadline-dev libbz2-dev git gcc g++ libssl-dev \
|
||||
libncurses-dev libboost-all-dev gdb gdbserver expect
|
||||
|
||||
# version-specific deps
|
||||
if [[ "$UBUNTU_VERSION" == "26.04" ]]; then
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO \
|
||||
apt-get -y install libgoogle-perftools-dev default-libmysqlclient-dev
|
||||
else
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO \
|
||||
apt-get -y install google-perftools libmysqlclient-dev libncurses5-dev libncursesw5-dev
|
||||
fi
|
||||
|
||||
VAR_PATH="$CURRENT_PATH/../../../../var"
|
||||
|
||||
|
||||
# Do not install MySQL if we are in docker (It will be used a docker container instead) or we are explicitly skipping it.
|
||||
if [[ $DOCKER != 1 && $SKIP_MYSQL_INSTALL != 1 ]]; then
|
||||
# run noninteractive install for MYSQL 8.4 LTS
|
||||
wget https://dev.mysql.com/get/mysql-apt-config_0.8.35-1_all.deb -P "$VAR_PATH"
|
||||
# resolve expired key issue
|
||||
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO dpkg -i "$VAR_PATH/mysql-apt-config_0.8.35-1_all.deb"
|
||||
$SUDO apt-get update
|
||||
if [[ "$UBUNTU_VERSION" == "24.04" ]]; then
|
||||
# run noninteractive install for MYSQL 8.4 LTS
|
||||
wget https://dev.mysql.com/get/mysql-apt-config_0.8.35-1_all.deb -P "$VAR_PATH"
|
||||
# resolve expired key issue
|
||||
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO dpkg -i "$VAR_PATH/mysql-apt-config_0.8.35-1_all.deb"
|
||||
$SUDO apt-get update
|
||||
fi
|
||||
DEBIAN_FRONTEND="noninteractive" $SUDO apt-get install -y mysql-server
|
||||
fi
|
||||
|
||||
|
||||
2
deps/g3dlite/include/G3D/platform.h
vendored
2
deps/g3dlite/include/G3D/platform.h
vendored
@@ -360,7 +360,7 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw) {\
|
||||
|
||||
// Bring in shared_ptr and weak_ptr
|
||||
#if (defined(__GNUC__) && defined(__APPLE__)) || defined(__linux__)
|
||||
#include <ciso646> // Defines _LIBCC_VERSION if linking against libc++ or does nothing
|
||||
#include <version> // Defines _LIBCC_VERSION if linking against libc++ or does nothing
|
||||
#endif
|
||||
#if (!defined(_LIBCPP_VERSION) && defined(__APPLE__)) || (!defined(_LIBCPP_VERSION) && defined(__linux__))
|
||||
# include <tr1/memory>
|
||||
|
||||
@@ -32,9 +32,6 @@ class TestSpellEntryHelper
|
||||
public:
|
||||
TestSpellEntryHelper()
|
||||
{
|
||||
// Zero initialize all fields
|
||||
std::memset(&_entry, 0, sizeof(_entry));
|
||||
|
||||
// Set safe defaults
|
||||
_entry.EquippedItemClass = -1;
|
||||
_entry.SchoolMask = SPELL_SCHOOL_MASK_NORMAL;
|
||||
@@ -154,7 +151,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
SpellEntry _entry;
|
||||
SpellEntry _entry{};
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user