Skip to content

Commit 80df6a5

Browse files
committed
fix: stage C++ integrator headers (EPMDev, UDASDev) into installer payload
build-installer.ps1's interfaces\ staging step only copied Python and C# bindings into the installer payload, never the loose C++ headers under interfaces\C++\EPMDev\ and interfaces\C++\UDASDev\. These headers have no compiled library of their own -- C++ integrators build directly against them -- so omitting them from the installer silently drops a supported integration path with no error, even though a real PROD installation ships these headers under Qualcomm\Alpaca\ (formerly ships them via the downstream Alpaca-branded packaging that consumes this installer). Fix: stage interfaces\C++\EPMDev\*.h and interfaces\C++\UDASDev\*.h into the installer payload's interfaces\C++\{EPMDev,UDASDev}\ alongside the existing Python/C# staging, following the same Test-Path-guarded pattern already used for those languages. Verified: rebuilt the Windows installer with this change from a real release checkout and confirmed both header sets are present in the resulting payload.zip under interfaces\C++\. Signed-off-by: Hang Zhao (QCT) <hangz@qti.qualcomm.com>
1 parent afe6677 commit 80df6a5

1 file changed

Lines changed: 14 additions & 1 deletion

File tree

packaging/windows/build-installer.ps1

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,19 @@ if (Test-Path (Join-Path $SourceRoot 'examples')) {
112112

113113
$interfacesDest = Join-Path $data 'interfaces'
114114
New-Item -ItemType Directory -Force -Path $interfacesDest | Out-Null
115+
# C++ integrator headers (no compiled library -- consumers build against these
116+
# directly). Matches PROD parity: PROD ships interfaces\C++\{EPMDev,UDASDev}\ headers.
117+
foreach ($cppMod in @('EPMDev', 'UDASDev')) {
118+
$cppHeaderSrc = Join-Path $SourceRoot "interfaces\C++\$cppMod"
119+
if (Test-Path $cppHeaderSrc) {
120+
$cppHeaderDest = Join-Path $interfacesDest "C++\$cppMod"
121+
New-Item -ItemType Directory -Force -Path $cppHeaderDest | Out-Null
122+
Copy-Item (Join-Path $cppHeaderSrc '*.h') $cppHeaderDest -Force
123+
} else {
124+
Write-Warning "No interfaces\C++\$cppMod directory found; C++ headers will be absent from the installer."
125+
}
126+
}
127+
115128
foreach ($lang in @('Python', 'C#')) {
116129
$srcLang = Join-Path $SourceRoot "interfaces\$lang"
117130
if (Test-Path $srcLang) {
@@ -166,4 +179,4 @@ if (-not (Test-Path $setup)) { throw "IExpress did not produce $setup." }
166179

167180
Write-Host ""
168181
Write-Host "Installer created: $setup"
169-
Write-Host (" size: {0:N1} MB" -f ((Get-Item $setup).Length / 1MB))
182+
Write-Host (" size: {0:N1} MB" -f ((Get-Item $setup).Length / 1MB))

0 commit comments

Comments
 (0)