Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .azure-pipelines/azure-pipelines-win.yml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions .ci_support/win_arm64_.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
c_compiler:
- vs2022
c_stdlib:
- vs
channel_sources:
- conda-forge
channel_targets:
- conda-forge main
cxx_compiler:
- vs2022
target_platform:
- win-arm64
1 change: 1 addition & 0 deletions README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions conda-forge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ build_platform:
linux_aarch64: linux_64
linux_ppc64le: linux_64
osx_arm64: osx_64
win_arm64: win_64
conda_build:
pkg_format: '2'
conda_build_tool: rattler-build
Expand Down
19 changes: 16 additions & 3 deletions recipe/build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,26 @@ set "PKG_CONFIG_PATH=%LIBRARY_LIB%\pkgconfig;%LIBRARY_PREFIX%\share\pkgconfig"
:: get mixed path (forward slash) form of prefix so host prefix replacement works
set "LIBRARY_PREFIX_M=%LIBRARY_PREFIX:\=/%"

set "MESON_ARGS=--wrap-mode=nofallback --buildtype=release --prefix=%LIBRARY_PREFIX_M% --backend=ninja -Dbuiltin=true"
:: Preserve MESON_ARGS from the compiler activation. For win-arm64 cross builds
:: that includes --cross-file (needs_exe_wrapper), without which meson treats the
:: build as native and fails the sanity check with WinError 216 on the x64 host.
if "%MESON_ARGS%"=="" (
set "MESON_ARGS=--buildtype=release --prefix=%LIBRARY_PREFIX_M% --libdir=lib"
)

:: win-arm64: no ICU (builtin PSL only). Same runtime=no as the static build.
if "%PKG_NAME%"=="libpsl-static" (
%BUILD_PREFIX%\Scripts\meson.exe setup builddir %MESON_ARGS% -Druntime=no --default-library=static
set "PSL_RUNTIME=no"
set "PSL_LIBRARY=static"
) else if "%target_platform%"=="win-arm64" (
set "PSL_RUNTIME=no"
set "PSL_LIBRARY=shared"
) else (
%BUILD_PREFIX%\Scripts\meson.exe setup builddir %MESON_ARGS% -Druntime=libicu --default-library=shared
set "PSL_RUNTIME=libicu"
set "PSL_LIBRARY=shared"
)

%BUILD_PREFIX%\Scripts\meson.exe setup builddir %MESON_ARGS% --wrap-mode=nofallback --backend=ninja -Dbuiltin=true -Druntime=%PSL_RUNTIME% --default-library=%PSL_LIBRARY%
if errorlevel 1 exit 1

ninja -v -C builddir -j %CPU_COUNT%
Expand Down
6 changes: 4 additions & 2 deletions recipe/recipe.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
context:
version: "0.22.0"
build_number: 2
build_number: 3

recipe:
name: libpsl-packages
Expand Down Expand Up @@ -44,7 +44,9 @@ outputs:
- pkg-config
- meson
host:
- icu
- if: not (win and arm64)
then:
- icu
tests:
- script:
- if: unix
Expand Down
Loading