Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,36 @@
SUMMARY = "eCMD"
DESCRIPTION = "eCMD is a hardware access API for IBM Systems"
LICENSE= "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/NOTICE;md5=fee220301a2af3faf8f211524b4248ea"
SRC_URI = "git://github.com/open-power/eCMD.git;branch=ecmd15;protocol=https"
SRCREV = "72b925d4fabc8bff71d56f7a5ec7e3f0730f8f06"
DEPENDS += "zlib"
SRC_URI += "file://croserver.service"
S = "${WORKDIR}/git"
inherit python3native
DEPENDS += "${PYTHON_PN}-distro-native"
do_configure() {
LD="${CXX}" ${PYTHON} ${S}/config.py \
--without-swig --output-root ${B} --target obj \
--extensions "cmd cip" --build-verbose
}
do_compile() {
cd ${S}/dllNetwork/server
oe_runmake
}
do_install() {
install -d ${D}${bindir}
install -m 0755 out_obj/lib/server1p ${D}${bindir}/croserver
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/croserver.service ${D}${systemd_system_unitdir}/
}
FILES:${PN} += "${systemd_system_unitdir}/croserver.service"
@@ -0,0 +1,12 @@
[Unit]
Description=Cronus Server
Documentation=https://github.com/open-power/eCMD/
After=network.service
[Service]
Type=simple
ExecStart=/usr/bin/croserver
Restart=on-failure
ProtectHome=yes
ProtectSystem=full
RestrictAddressFamilies=AF_INET AF_INET6
@@ -0,0 +1,61 @@
SUMMARY = "eCMD"
DESCRIPTION = "eCMD is a hardware access API for POWER Systems"
LICENSE= "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/NOTICE;md5=fee220301a2af3faf8f211524b4248ea"
SRC_URI = "git://github.com/open-power/eCMD.git;branch=ecmd15;protocol=https"
SRCREV = "15e382180d49f7ea4117ccc341ca91e361721fd4"
inherit python3native
DEPENDS = "zlib"
S = "${WORKDIR}/git"
export LD="${CXX}"
export SLDFLAGS="${LDFLAGS}"
# use native config.py to build required ecmd extensions
do_configure() {
${S}/config.py --without-swig --without-python --without-python3 --without-perl \
--without-pyecmd --install-path ${D}${prefix} --output-root ${B} --target ${TARGET_ARCH} \
--extensions "cmd cip"
}
do_compile() {
oe_runmake all
}
do_install() {
oe_runmake install
# we don't need the target scripts or ecmd setup
rm ${D}${bindir}/target.* ${D}${bindir}/ecmdsetup.pl
# ecmd installs to atypical places in the filesystem.
# move all the installed files to more conventional directories.
install -d ${D}${includedir} ${D}${datadir}/${BPN}/help ${D}${bindir} ${D}${libdir}
mv ${D}${prefix}/help/** ${D}${datadir}/${BPN}/help
mv ${D}${prefix}/${TARGET_ARCH}/bin/** ${D}${bindir}
mv ${D}${prefix}/${TARGET_ARCH}/lib/** ${D}${libdir}
rm ${D}${bindir}/ecmdVersion
rmdir ${D}${prefix}/help \
${D}${prefix}/${TARGET_ARCH}/lib \
${D}${prefix}/${TARGET_ARCH}/bin \
${D}${prefix}/${TARGET_ARCH}/perl \
${D}${prefix}/${TARGET_ARCH}
}
# ecmd makefile assumes that dependencies are built from left to right.
PARALLEL_MAKE = ""
# ecmd doesn't have proper library versioning
FILES:${PN}-dev:remove = "${libdir}/lib*.so"
FILES:${PN} += "${libdir}/lib*.so"
RDEPENDS:${PN}-bin = "libecmd"
# This allows someone to easily use ecmd bins, even if you dont want them.
PACKAGE_BEFORE_PN = "libecmd-bin"
FILES:${PN}-bin += "${bindir}"