Skip to content

Commit

Permalink
Towards fixing pipelines
Browse files Browse the repository at this point in the history
  • Loading branch information
kimlaine committed Apr 29, 2020
1 parent 1240ac5 commit 829e6ed
Show file tree
Hide file tree
Showing 5 changed files with 29 additions and 21 deletions.
42 changes: 25 additions & 17 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -762,31 +762,39 @@ endif()
# dynamic library paths need to be specified explicitly in the NuGet
# command. See dotnet/nuget/SEALNet.nuspec.in.

set(SEAL_WINDOWS_SEAL_C_PATH_ ${SEAL_SOURCE_DIR}/lib/x64/$Configuration$/sealc.dll)
set(SEAL_LINUX_SEAL_C_PATH_ ${SEAL_SOURCE_DIR}/lib/libsealc.so.${SEAL_VERSION})
set(SEAL_MACOS_SEAL_C_PATH_ ${SEAL_SOURCE_DIR}/lib/libsealc.${SEAL_VERSION}.dylib)

# First create the multi-platform NuSpec file so disable all platform-specific
# library paths
unset(SEAL_WINDOWS_SEAL_C_PATH)
unset(SEAL_LINUX_SEAL_C_PATH)
unset(SEAL_MACOS_SEAL_C_PATH)

# Supporting local building of NuGet package
if(NOT SEAL_MULTIPLATFORM_NUGET_BUILD)
if(MSVC)
set(SEAL_WINDOWS_SEAL_C_PATH ${SEAL_WINDOWS_SEAL_C_PATH_})
elseif(UNIX)
set(SEAL_LINUX_SEAL_C_PATH ${SEAL_LINUX_SEAL_C_PATH_})
elseif(APPLE)
set(SEAL_MACOS_SEAL_C_PATH ${SEAL_MACOS_SEAL_C_PATH_})
endif()
endif()

# Create SEALNet.nuspec from SEALNet.nuspec.in
# Create SEALNet-multi.nuspec for a multi-platform NuGet package
configure_file(
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet.nuspec.in
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet.nuspec
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet-multi.nuspec
@ONLY)

set(SEAL_WINDOWS_SEAL_C_PATH ${SEAL_SOURCE_DIR}/lib/x64/$Configuration$/sealc.dll)
set(SEAL_LINUX_SEAL_C_PATH ${SEAL_SOURCE_DIR}/lib/libsealc.so)
set(SEAL_MACOS_SEAL_C_PATH ${SEAL_SOURCE_DIR}/lib/libsealc.dylib)

# Supporting local building of NuGet package
if(MSVC)
set(NUGET_SEAL_C_PATH ${SEAL_WINDOWS_SEAL_C_PATH})
elseif(UNIX)
set(NUGET_SEAL_C_PATH ${SEAL_LINUX_SEAL_C_PATH})
elseif(APPLE)
set(NUGET_SEAL_C_PATH ${SEAL_MACOS_SEAL_C_PATH})
endif()

if(NUGET_SEAL_C_PATH)
# Create SEALNet.nuspec for a local NuGet pack from SEALNet.nuspec.in
configure_file(
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet.nuspec.in
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet.nuspec
@ONLY)
endif()

# Create SEALNet.targets from SEALNet.targets.in
configure_file(
${SEAL_SOURCE_DIR}/dotnet/nuget/SEALNet.targets.in
Expand Down
2 changes: 1 addition & 1 deletion SEAL.sln
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "pipelines", "pipelines", "{
pipelines\pipeline-CI-Debug-macOS.yml = pipelines\pipeline-CI-Debug-macOS.yml
pipelines\pipeline-CI-Debug-Windows.yml = pipelines\pipeline-CI-Debug-Windows.yml
pipelines\pipeline-CI-Release-All.yml = pipelines\pipeline-CI-Release-All.yml
pipelines\pipeline-Nuget.yml = pipelines\pipeline-Nuget.yml
pipelines\pipeline-NuGet.yml = pipelines\pipeline-NuGet.yml
pipelines\pipeline-PR-Debug-All.yml = pipelines\pipeline-PR-Debug-All.yml
pipelines\windows.yml = pipelines\windows.yml
EndProjectSection
Expand Down
2 changes: 1 addition & 1 deletion pipelines/nuget.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ steps:
command: 'pack'
packagesToPack: '$(Build.ArtifactStagingDirectory)\windows-drop\dotnet\nuget\*.nuspec'
packDestination: '$(Build.ArtifactStagingDirectory)\windows-drop\dotnet\nuget\Release'
buildProperties: 'Configuration=Release;NUGET_WINDOWS_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\sealc.dll;NUGET_LINUX_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\libsealc.so*;NUGET_MACOS_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\libsealc*.dylib;NUGET_ANDROIDARM64_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\arm64-v8a\libsealc.so;NUGET_ANDROIDX64_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\x86_64\libsealc.so'
buildProperties: 'Configuration=Release;NUGET_WINDOWS_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\sealc.dll;NUGET_LINUX_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\libsealc.so;NUGET_MACOS_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\libsealc.dylib;NUGET_ANDROIDARM64_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\arm64-v8a\libsealc.so;NUGET_ANDROIDX64_SEAL_C_PATH=$(Build.ArtifactStagingDirectory)\windows-drop\lib\x86_64\libsealc.so'

- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: drop'
Expand Down
2 changes: 1 addition & 1 deletion pipelines/pipeline-NuGet.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# This defines a pipeline to pack into Nuget.
# This defines a pipeline to pack into NuGet.

trigger: none

Expand Down
2 changes: 1 addition & 1 deletion pipelines/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ steps:
TargetFolder: '$(Build.ArtifactStagingDirectory)'

- task: CopyFiles@2
displayName: 'Copy Nuspec File to: $(Build.ArtifactStagingDirectory)'
displayName: 'Copy NuSpec File to: $(Build.ArtifactStagingDirectory)'
inputs:
SourceFolder: '$(Build.SourcesDirectory)\dotnet\nuget\'
Contents: 'SEALNet.nuspec'
Expand Down

0 comments on commit 829e6ed

Please sign in to comment.