Skip to content

Commit

Permalink
Fix OpenNI2 deploy (microsoft#2627)
Browse files Browse the repository at this point in the history
* Fix OpenNI2 deploy

Fix to deploy initialization file and drivers.

* [openni2] Adjusting deployopenni2.ps1 paths

* Fix Create Directory of OpenNI2 Drivers

Fix create directory of OpenNI2 drivers.

* Fix Deploy Script Path

Fix deploy script path.
  • Loading branch information
UnaNancyOwen authored and ras0219-msft committed Jan 23, 2018
1 parent dcea519 commit 6420361
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 1 deletion.
2 changes: 1 addition & 1 deletion ports/openni2/CONTROL
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Source: openni2
Version: 2.2.0.33-4
Version: 2.2.0.33-7
Build-Depends: kinectsdk1
Description: OpenNI is open source library for access to Natural Interaction (NI) devices such as RGB-D camera.
18 changes: 18 additions & 0 deletions ports/openni2/openni2deploy.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Note: This function signature and behavior is depended upon by applocal.ps1

function deployOpenNI2([string]$targetBinaryDir, [string]$installedDir, [string]$targetBinaryName) {
if ($targetBinaryName -like "OpenNI2.dll") {
if(Test-Path "$installedDir\bin\OpenNI2\OpenNI.ini") {
Write-Verbose " Deploying OpenNI2 Initialization"
deployBinary "$targetBinaryDir" "$installedDir\bin\OpenNI2" "OpenNI.ini"
}
if(Test-Path "$installedDir\bin\OpenNI2\Drivers") {
Write-Verbose " Deploying OpenNI2 Drivers"
New-Item "$targetBinaryDir\OpenNI2\Drivers" -ItemType Directory -ErrorAction SilentlyContinue | Out-Null
Get-ChildItem "$installedDir\bin\OpenNI2\Drivers\*.*" -include "*.dll","*.ini" | % {
deployBinary "$targetBinaryDir\OpenNI2\Drivers" "$installedDir\bin\OpenNI2\Drivers" $_.Name
}
}
}
}

16 changes: 16 additions & 0 deletions ports/openni2/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,12 @@ file(
file(
INSTALL
"${SOURCE_CONFIG_PATH}/OpenNI.ini"
DESTINATION
${CURRENT_PACKAGES_DIR}/bin/OpenNI2
)

file(
INSTALL
"${SOURCE_BIN_PATH_RELEASE}/OpenNI2.dll"
DESTINATION
${CURRENT_PACKAGES_DIR}/bin
Expand All @@ -170,6 +176,12 @@ file(
file(
INSTALL
"${SOURCE_CONFIG_PATH}/OpenNI.ini"
DESTINATION
${CURRENT_PACKAGES_DIR}/debug/bin/OpenNI2
)

file(
INSTALL
"${SOURCE_BIN_PATH_DEBUG}/OpenNI2.dll"
DESTINATION
${CURRENT_PACKAGES_DIR}/debug/bin
Expand Down Expand Up @@ -205,6 +217,10 @@ file(
${CURRENT_PACKAGES_DIR}/tools/openni2
)

# Deploy Script
file(COPY ${CMAKE_CURRENT_LIST_DIR}/openni2deploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/bin/OpenNI2)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/openni2deploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/OpenNI2)

# Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openni2)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/openni2/LICENSE ${CURRENT_PACKAGES_DIR}/share/openni2/copyright)
6 changes: 6 additions & 0 deletions scripts/buildsystems/msbuild/applocal.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ function resolve([string]$targetBinary) {
if (Test-Path "$installedDir\$_") {
deployBinary $targetBinaryDir $installedDir "$_"
if (Test-Path function:\deployPluginsIfQt) { deployPluginsIfQt $targetBinaryDir "$g_install_root\plugins" "$_" }
if (Test-Path function:\deployOpenNI2) { deployOpenNI2 $targetBinaryDir "$g_install_root" "$_" }
resolve "$targetBinaryDir\$_"
} elseif (Test-Path "$targetBinaryDir\$_") {
Write-Verbose " ${_}: $_ not found in vcpkg; locally deployed"
Expand All @@ -66,5 +67,10 @@ if (Test-Path "$g_install_root\plugins\qtdeploy.ps1") {
. "$g_install_root\plugins\qtdeploy.ps1"
}

# Note: This is a hack to make OpenNI2 work.
if (Test-Path "$g_install_root\bin\OpenNI2\openni2deploy.ps1") {
. "$g_install_root\bin\OpenNI2\openni2deploy.ps1"
}

resolve($targetBinary)
Write-Verbose $($g_searched | out-string)

0 comments on commit 6420361

Please sign in to comment.