Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
fa72660
Update gdial-plat-util.c
agampa263 Jan 9, 2026
05aa004
Update native_full_build.yml
agampa263 Jan 14, 2026
252d5b3
Update native_full_build.yml
agampa263 Jan 14, 2026
9ba446f
Update build_dependencies.sh
agampa263 Jan 14, 2026
16870c5
Update native_full_build.yml
agampa263 Jan 14, 2026
581e87e
Update build_dependencies.sh
agampa263 Jan 14, 2026
01f9586
Update build_dependencies.sh
agampa263 Jan 14, 2026
ed02046
Update build_dependencies.sh
agampa263 Jan 14, 2026
6460dda
Update build_dependencies.sh
agampa263 Jan 14, 2026
4408d1f
Update build_dependencies.sh
agampa263 Jan 14, 2026
03e596e
Update build_dependencies.sh
agampa263 Jan 14, 2026
d04556e
Update cov_build.sh
agampa263 Jan 14, 2026
e7d9e39
Update cov_build.sh
agampa263 Jan 14, 2026
eaed86f
Update cov_build.sh
agampa263 Jan 14, 2026
7ce476c
Update cov_build.sh
agampa263 Jan 14, 2026
4802e56
Update build_dependencies.sh
agampa263 Jan 14, 2026
6d4b9d5
Update cov_build.sh
agampa263 Jan 14, 2026
c269f7e
Update cov_build.sh
agampa263 Jan 14, 2026
b87c35b
Update build_dependencies.sh
agampa263 Jan 14, 2026
33225f8
Update cov_build.sh
agampa263 Jan 14, 2026
61f79cb
Update build_dependencies.sh
agampa263 Jan 14, 2026
bbc259c
Update cov_build.sh
agampa263 Jan 14, 2026
639afb0
Update cov_build.sh
agampa263 Jan 14, 2026
6abd04c
Update cov_build.sh
agampa263 Jan 14, 2026
ab18d4e
Update cov_build.sh
agampa263 Jan 14, 2026
7312111
Update build_dependencies.sh
agampa263 Jan 14, 2026
6575849
Update build_dependencies.sh
agampa263 Jan 14, 2026
b18ebba
Update cov_build.sh
agampa263 Jan 15, 2026
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
4 changes: 1 addition & 3 deletions .github/workflows/native_full_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@ on:
jobs:
build-entservices-on-pr:
name: Build xdialserver component in github rdkcentral
runs-on: ubuntu-latest
container:
image: ghcr.io/rdkcentral/docker-rdk-ci:latest
runs-on: ubuntu-22.04

steps:
- name: Checkout code
Expand Down
162 changes: 75 additions & 87 deletions build_dependencies.sh
Original file line number Diff line number Diff line change
@@ -1,130 +1,118 @@
#!/bin/bash
set -x
set -e
set -x

##############################
# Paths
GITHUB_WORKSPACE="${PWD}"
INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr"

cd ${GITHUB_WORKSPACE}
mkdir -p "$INSTALL_PREFIX"

# # #############################
#1. Install Dependencies and packages
##############################
# System dependencies (sudo REQUIRED in GitHub Actions)
sudo apt update
sudo apt install -y \
ninja-build meson cmake curl libcurl4-openssl-dev \
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The package 'cmake' is now installed via apt, but this is redundant since the script immediately uses cmake commands. Consider verifying that cmake is available or documenting the minimum required version, as ubuntu-22.04 may have an older cmake version than what was in the previous Docker image.

Copilot uses AI. Check for mistakes.
libsoup2.4-dev libxml2-dev libglib2.0-dev \
gobject-introspection libgirepository1.0-dev \
libgtk-3-dev libcunit1-dev valac pandoc
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The package libcunit1-dev is newly added but was not present in the original dependency list. If this is an intentional new dependency, ensure it is actually required for the build process. If not required, it should be removed to avoid unnecessary bloat.

Suggested change
libgtk-3-dev libcunit1-dev valac pandoc
libgtk-3-dev valac pandoc

Copilot uses AI. Check for mistakes.

apt update
apt install -y ninja-build meson curl libsoup2.4-dev libxml2-dev libglib2.0-dev gobject-introspection libgirepository1.0-dev libgtk-3-dev valac pandoc
pip install jsonref

############################
# Build trevor-base64
if [ ! -d "trower-base64" ]; then
##############################
# Build trower-base64
git clone https://github.com/xmidt-org/trower-base64.git
fi
cd trower-base64
meson setup --warnlevel 3 --werror build
meson setup build --prefix="$INSTALL_PREFIX"
ninja -C build
ninja -C build install
cd ..
###########################################
# Clone the required repositories

rm -rf iarmbus ThunderTools Thunder entservices-apis entservices-testframework gssdp


##############################
# Clone required repositories
git clone https://github.com/rdkcentral/iarmbus.git
export IARMBUS_PATH=$GITHUB_WORKSPACE/iarmbus

git clone --branch R4.4.3 https://github.com/rdkcentral/ThunderTools.git
export IARMBUS_PATH="$GITHUB_WORKSPACE/iarmbus"

git clone --branch R4.4.3 https://github.com/rdkcentral/ThunderTools.git
git clone --branch R4.4.1 https://github.com/rdkcentral/Thunder.git

git clone --branch main https://github.com/rdkcentral/entservices-apis.git

git clone https://$GITHUB_TOKEN@github.com/rdkcentral/entservices-testframework.git

git clone --branch gssdp-1.2.3 https://gitlab.gnome.org/GNOME/gssdp.git

############################
# Build gssdp-1.2
echo "======================================================================================"
echo "buliding gssdp-1.2"
##############################
# Build gssdp
cd gssdp

rm -rf build
meson setup build

meson setup build --prefix="$INSTALL_PREFIX"
ninja -C build
ninja -C build install
cd -
cd ..

############################
# Build Thunder-Tools
echo "======================================================================================"
echo "buliding thunderTools"
##############################
# Build ThunderTools
cd ThunderTools
patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/00010-R4.4-Add-support-for-project-dir.patch
cd -

patch -p1 < "$GITHUB_WORKSPACE/entservices-testframework/patches/00010-R4.4-Add-support-for-project-dir.patch"
cd ..

cmake -G Ninja -S ThunderTools -B build/ThunderTools \
-DEXCEPTIONS_ENABLE=ON \
-DCMAKE_INSTALL_PREFIX="/usr" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
-DGENERIC_CMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
-DCMAKE_INSTALL_PREFIX="$INSTALL_PREFIX" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake"

cmake --build build/ThunderTools --target install


############################
##############################
# Build Thunder
echo "======================================================================================"
echo "buliding thunder"

cd Thunder
patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/Use_Legact_Alt_Based_On_ThunderTools_R4.4.3.patch
patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/error_code_R4_4.patch
patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/1004-Add-support-for-project-dir.patch
patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/RDKEMW-733-Add-ENTOS-IDS.patch
cd -
patch -p1 < "$GITHUB_WORKSPACE/entservices-testframework/patches/Use_Legact_Alt_Based_On_ThunderTools_R4.4.3.patch"
patch -p1 < "$GITHUB_WORKSPACE/entservices-testframework/patches/error_code_R4_4.patch"
patch -p1 < "$GITHUB_WORKSPACE/entservices-testframework/patches/1004-Add-support-for-project-dir.patch"
patch -p1 < "$GITHUB_WORKSPACE/entservices-testframework/patches/RDKEMW-733-Add-ENTOS-IDS.patch"
cd ..

cmake -G Ninja -S Thunder -B build/Thunder \
-DMESSAGING=ON \
-DCMAKE_INSTALL_PREFIX="/usr" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
-DGENERIC_CMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
-DBUILD_TYPE=Debug \
-DBINDING=127.0.0.1 \
-DPORT=55555 \
-DEXCEPTIONS_ENABLE=ON \
-DCMAKE_INSTALL_PREFIX="$INSTALL_PREFIX" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
-DMESSAGING=ON \
-DBUILD_TYPE=Debug \
-DEXCEPTIONS_ENABLE=ON

cmake --build build/Thunder --target install

############################
##############################
# Build entservices-apis
echo "======================================================================================"
echo "buliding entservices-apis"
cd entservices-apis
rm -rf jsonrpc/DTV.json
cd ..

cmake -G Ninja -S entservices-apis -B build/entservices-apis \
-DEXCEPTIONS_ENABLE=ON \
-DCMAKE_INSTALL_PREFIX="/usr" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
cmake -G Ninja -S entservices-apis -B build/entservices-apis \
-DCMAKE_INSTALL_PREFIX="$INSTALL_PREFIX" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake"

cmake --build build/entservices-apis --target install

############################

############################
# Build and deploy stubs for IARMBus and WPEFramework securityagent
mkdir -p /usr/include/WPEFramework/securityagent
cp $GITHUB_WORKSPACE/stubs/securityagent/* /usr/include/WPEFramework/securityagent/ -v

echo "======================================================================================"
echo "Building IARMBus and WPEFramework securityagent stubs"
cd $GITHUB_WORKSPACE
cd ./stubs
g++ -fPIC -shared -o libIARMBus.so iarm_stubs.cpp -I$GITHUB_WORKSPACE/stubs -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I$IARMBUS_PATH/core -I$IARMBUS_PATH/core/include -fpermissive
g++ -fPIC -shared -o libWPEFrameworkSecurityUtil.so securityagent/SecurityTokenUtil.cpp -I$GITHUB_WORKSPACE/stubs -fpermissive

cp libIARMBus.so /usr/local/lib/
cp libWPEFrameworkSecurityUtil.so /usr/local/lib/
##############################
# Build and install IARMBus & SecurityAgent stubs
STUB_INCLUDE="$INSTALL_PREFIX/include"
STUB_LIB="$INSTALL_PREFIX/lib"

mkdir -p "$STUB_INCLUDE/WPEFramework/securityagent"
mkdir -p "$STUB_LIB"

cd "$GITHUB_WORKSPACE/stubs"

g++ -fPIC -shared -o libIARMBus.so iarm_stubs.cpp \
-I"$GITHUB_WORKSPACE/stubs" \
-I"$IARMBUS_PATH/core" \
-I"$IARMBUS_PATH/core/include" \
-I"$STUB_INCLUDE" \
-fpermissive

g++ -fPIC -shared -o libWPEFrameworkSecurityUtil.so \
securityagent/SecurityTokenUtil.cpp \
-I"$GITHUB_WORKSPACE/stubs" \
-I"$STUB_INCLUDE" \
-fpermissive

cp libIARMBus.so "$STUB_LIB/"
cp libWPEFrameworkSecurityUtil.so "$STUB_LIB/"
cp securityagent/* "$STUB_INCLUDE/WPEFramework/securityagent/"

echo "========================================================"
echo "Dependencies built and installed into $INSTALL_PREFIX"
echo "========================================================"
35 changes: 26 additions & 9 deletions cov_build.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,33 @@
#!/bin/bash
set -x
set -e
set -x

##############################
# Paths
GITHUB_WORKSPACE="${PWD}"
ls -la ${GITHUB_WORKSPACE}
############################
# Build xdialserver
echo "buliding xdialserver"
INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr"

cd ${GITHUB_WORKSPACE}
##############################
# Environment
export CMAKE_PREFIX_PATH="$INSTALL_PREFIX"
export PKG_CONFIG_PATH="$INSTALL_PREFIX/lib/pkgconfig:$INSTALL_PREFIX/lib/x86_64-linux-gnu/pkgconfig"
export LD_LIBRARY_PATH="$INSTALL_PREFIX/lib:$INSTALL_PREFIX/lib/x86_64-linux-gnu"

make
##############################
# Build xdialserver (out-of-source)
cmake -G Ninja \
-S "$GITHUB_WORKSPACE/server" \
-B build/xdialserver \
-DCMAKE_INSTALL_PREFIX="$INSTALL_PREFIX" \
-DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" \
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The CMAKE_MODULE_PATH references '$GITHUB_WORKSPACE/install/tools/cmake' but this directory is created by the ThunderTools build in build_dependencies.sh. There's an implicit dependency on build_dependencies.sh being run first, which should be documented or validated in the script.

Copilot uses AI. Check for mistakes.
-DCMAKE_CXX_FLAGS="\
-I$INSTALL_PREFIX/include/WPEFramework \
-I$INSTALL_PREFIX/include/WPEFramework/core \
-I$INSTALL_PREFIX/include/WPEFramework/plugins \
-I$INSTALL_PREFIX/include/WPEFramework/interfaces" \
-DCMAKE_SHARED_LINKER_FLAGS="-L$INSTALL_PREFIX/lib" \
-DCMAKE_EXE_LINKER_FLAGS="-L$INSTALL_PREFIX/lib" \
-DCMAKE_BUILD_RPATH="$INSTALL_PREFIX/lib" \
-DCMAKE_INSTALL_RPATH="$INSTALL_PREFIX/lib"

echo "======================================================================================"
exit 0
cmake --build build/xdialserver
2 changes: 1 addition & 1 deletion server/plat/gdial-plat-util.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* limitations un der the License.
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The word "under" has been incorrectly split into "un der" with an extra space. This should be corrected to maintain the proper Apache license text.

Suggested change
* limitations un der the License.
* limitations under the License.

Copilot uses AI. Check for mistakes.
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change introduces a typo in the Apache License 2.0 header. The text "limitations un der" has an incorrect space splitting "under" into two words. The correct text should be "limitations under the License" as it was before this change.

Suggested change
* limitations un der the License.
* limitations under the License.

Copilot uses AI. Check for mistakes.
Copy link

Copilot AI Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incorrect spacing in the word 'under'. Should be 'under' not 'un der'.

Suggested change
* limitations un der the License.
* limitations under the License.

Copilot uses AI. Check for mistakes.
*/

#include <stdio.h>
Expand Down