diff --git a/1k/1kiss.ps1 b/1k/1kiss.ps1 index 465e5f4d4216..95a59f1b5479 100644 --- a/1k/1kiss.ps1 +++ b/1k/1kiss.ps1 @@ -690,6 +690,9 @@ function download_and_expand($url, $out, $dest) { } tar xf "$out" -C $dest } + elseif ($out.EndsWith('.7z')) { + 7z x "$out" "-o$dest" -y | Out-Host + } elseif ($out.EndsWith('.sh')) { chmod 'u+x' "$out" $1k.mkdirs($dest) @@ -992,7 +995,38 @@ function setup_jdk() { return $javac_prog } -# setup llvm for windows only +function setup_7z() { + # ensure 7z_prog + $7z_cmd_info = Get-Command '7z' -ErrorAction SilentlyContinue + if (!$7z_cmd_info) { + if ($IsWin) { + $7z_prog = Join-Path $external_prefix '7z2301-x64\7z.exe' + $7z_pkg_out = Join-Path $external_prefix '7z2301-x64.zip' + if (!$1k.isfile($7z_prog)) { + # https://www.7-zip.org/download.html + $7z_url = devtool_url '7z2301-x64.zip' + download_and_expand -url $7z_url -out $7z_pkg_out $external_prefix + } + + $7z_bin = Split-Path $7z_prog -Parent + if (!$env:PATH.Contains($7z_bin)) { + $env:PATH = "$7z_bin$ENV_PATH_SEP$env:PATH" + } + } + elseif ($IsLinux) { + if ($(which dpkg)) { sudo apt install p7zip-full } + } + elseif ($IsMacOS) { + brew install p7zip + } + + $7z_cmd_info = Get-Command '7z' -ErrorAction SilentlyContinue + if (!$7z_cmd_info) { + throw "setup 7z fail" + } + } +} + function setup_llvm() { if (!$manifest.Contains('llvm')) { return $null } $clang_prog, $clang_ver = find_prog -name 'llvm' -cmd "clang" @@ -1001,29 +1035,13 @@ function setup_llvm() { $llvm_bin = Join-Path $llvm_root 'bin' $clang_prog, $clang_ver = find_prog -name 'llvm' -cmd "clang" -path $llvm_bin -silent $true if (!$clang_prog) { - # ensure 7z_prog - $7z_cmd_info = Get-Command '7z' -ErrorAction SilentlyContinue - if ($7z_cmd_info) { - $7z_prog = $7z_cmd_info.Path - } - else { - $7z_prog = Join-Path $external_prefix '7z2301-x64\7z.exe' - $7z_pkg_out = Join-Path $external_prefix '7z2301-x64.zip' - if (!$1k.isfile($7z_prog)) { - # https://www.7-zip.org/download.html - $7z_url = devtool_url '7z2301-x64.zip' - download_and_expand -url $7z_url -out $7z_pkg_out $external_prefix/ - } - } - - if (!$1k.isfile($7z_prog)) { - throw "setup 7z fail which is required for setup llvm clang!" - } - # download llvm clang and install extract it at prefix download_file "https://github.com/llvm/llvm-project/releases/download/llvmorg-${clang_ver}/LLVM-${clang_ver}-win64.exe" "$external_prefix\LLVM-${clang_ver}-win64.exe" $1k.mkdirs($llvm_root) - & $7z_prog x "$external_prefix\LLVM-${clang_ver}-win64.exe" "-o$llvm_root" -y | Out-Host + + # ensure 7z_prog + setup_7z + 7z x "$external_prefix\LLVM-${clang_ver}-win64.exe" "-o$llvm_root" -y | Out-Host $clang_prog, $clang_ver = find_prog -name 'llvm' -cmd "clang" -path $llvm_bin -silent $true if (!$clang_prog) { diff --git a/CHANGELOG.md b/CHANGELOG.md index 5367725dd0b5..dfda13e46311 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ - Implement cross-platform media controller for video playback by @rh101 in https://github.com/axmolengine/axmol/pull/1845 - Adjust media control positioning if video aspect ratio is maintained by @rh101 in https://github.com/axmolengine/axmol/pull/1851 + - Allow media controls to be rotated left or right by 90 degrees by @rh101 in https://github.com/axmolengine/axmol/pull/1910 - Allow certain code modules to be removed from build process by @rh101 in https://github.com/axmolengine/axmol/pull/1769, i.e. remove 3d features by `-DAX_ENABLE_3D=OFF` - New logging system with general log level and colored support - Implement new axmol log system based on fmtlib by @halx99 in https://github.com/axmolengine/axmol/pull/1732 @@ -20,7 +21,7 @@ - Add AXLOGD,AXLOGI,... functions for lua - Add axmol cmdline build option to specify build optimize flag: `-O0`(Debug), `-O1`(MinSizeRel), `-O2`(RelWithDebInfo), `-O3`(Release) -### Break Changes +### Breaking Changes - Rename `ax::Ref` ==> `ax::Object` - Remove `ax::log`, use `AXLOGD` instead @@ -65,6 +66,8 @@ - Fix spine two color tint data not being copied across to backend buffer on first frame by @rh101 in https://github.com/axmolengine/axmol/pull/1875 - Fix FileUtils issues on macOS by @smilediver in https://github.com/axmolengine/axmol/pull/1863 - Fix memory corruption bug and resulting crash in the TextFieldTTF by @TyelorD in https://github.com/axmolengine/axmol/pull/1890 +- Fix shaders not copying to final build on macOS for non Xcode builds by @smilediver in https://github.com/axmolengine/axmol/pull/1908 +- Fix system font blurring by in @DelinWorks in https://github.com/axmolengine/axmol/pull/1907 ### Improvements @@ -97,12 +100,18 @@ - Add libvlc prebuilt entry CMakeLists.txt - Add ability to create console apps by @smilediver in https://github.com/axmolengine/axmol/pull/1859 - Add support for ensuring sprite content size does not change on new texture by @rh101 in https://github.com/axmolengine/axmol/pull/1897 +- Remove obsolete `box2d-optimized` support by @aismann in https://github.com/axmolengine/axmol/pull/1913 +- Add macOS, Linux support for `tools/ci/genbindings.ps1` +- Fix `axmol` cmdline not raise error when cmake build fail +- Migrate wasm ci from appveyor to github actions -### sdks updates + +### sdks & tools updates - emsdk: 3.1.53 ==> 3.1.59 - AGP: 8.2.1 ==> 8.2.2 - androidx.media3: 1.0.2 ==> 1.2.1 +- glslcc: 1.9.4 ==> 1.9.5 ### 3rdparty updates @@ -196,7 +205,7 @@ - Fix build win32 with clang error - Fix ci build-site download unexpected artifacts from appveyor -### Break changes +### Breaking changes - Rename android entrypoint: `cocos_android_app_init` ==> `axmol_android_app_init` @@ -344,7 +353,7 @@ - RELEASE_KEY_PASSWORD ==> KEY_PASSWORD - Enable template projects' `aidl` by default for In-app purchases by @armanhossiny -### Break changes +### Breaking changes - Rename glview to correct representative name: `OpenGLView` ==> `GLView` by @paulocoutinhox diff --git a/tools/ci/genbindings.ps1 b/tools/ci/genbindings.ps1 index 341a22a7ca12..8f9b221dee44 100644 --- a/tools/ci/genbindings.ps1 +++ b/tools/ci/genbindings.ps1 @@ -29,8 +29,9 @@ if (($stage -band 1)) { $lib_name = @('libclang.dll', 'libclang.dylib', 'libclang.so')[$HOST_OS] $lib_path = Join-Path $AX_ROOT "tools/bindings-generator/libclang/$lib_name" if (!(Test-Path $lib_path -PathType Leaf)) { + setup_7z $llvm_ver = '15.0.7' - $llvm_pkg = "llvm-$llvm_ver.zip" + $llvm_pkg = "llvm-$llvm_ver.7z" $prefix = Join-Path $AX_ROOT "cache/devtools" $llvm_url = devtool_url $llvm_pkg