From bfa145f46badcb63bfbd3594492bd58c930ad54f Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 26 Aug 2017 11:35:20 -0700 Subject: openipmi: Upgrade to 2.0.24 Remove patches which are irrelevant now Signed-off-by: Khem Raj Signed-off-by: Martin Jansa --- .../openipmi/files/makefile-add-ldflags.patch | 19 ---- .../openipmi/files/openipmi-don-t-rm-.libs.patch | 32 ------ ...openipmi-remove-host-path-from-la_LDFLAGS.patch | 81 +++++---------- .../recipes-support/openipmi/openipmi_2.0.22.bb | 112 --------------------- .../recipes-support/openipmi/openipmi_2.0.24.bb | 109 ++++++++++++++++++++ 5 files changed, 132 insertions(+), 221 deletions(-) delete mode 100644 meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch delete mode 100644 meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch delete mode 100644 meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb create mode 100644 meta-oe/recipes-support/openipmi/openipmi_2.0.24.bb diff --git a/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch b/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch deleted file mode 100644 index 271c5323fd..0000000000 --- a/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch +++ /dev/null @@ -1,19 +0,0 @@ -Add LDFLAGS variable to Makefile.am, make sure the extra linker flags can be passed. - -Upstream-Status: Pending - -Signed-off-by: Yi Zhao - -diff --git a/swig/perl/Makefile.am b/swig/perl/Makefile.am -index 2f9ee4c..3a18892 100644 ---- a/swig/perl/Makefile.am -+++ b/swig/perl/Makefile.am -@@ -20,7 +20,7 @@ OpenIPMI_SRC = OpenIPMI_perl.c - OpenIPMI_OBJ = OpenIPMI_wrap.lo OpenIPMI_perl.lo - - OpenIPMI.so: $(OpenIPMI_OBJ) -- $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI -+ $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version $(LDFLAGS) -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI - rm -f OpenIPMI.so - mv .libs/OpenIPMI.so . - diff --git a/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch b/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch deleted file mode 100644 index ee3c660433..0000000000 --- a/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch +++ /dev/null @@ -1,32 +0,0 @@ -From bbd51cf010c80322034f7094e2c6a656aa1f17a7 Mon Sep 17 00:00:00 2001 -From: Wenzong Fan -Date: Fri, 13 Feb 2015 06:55:33 +0000 -Subject: [PATCH] openipmi: don't rm .libs - -Don't remove .libs after OpenIPMI.so generated, this may cause -dummystuff.so fails to link from the second build with error: - -* error: .libs/dummystuff.o: No such file or directory - -Upstream-Status: Pending - -Signed-off-by: Wenzong Fan ---- - swig/perl/Makefile.am | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/swig/perl/Makefile.am b/swig/perl/Makefile.am -index 12a282c..2f9ee4c 100644 ---- a/swig/perl/Makefile.am -+++ b/swig/perl/Makefile.am -@@ -23,7 +23,6 @@ OpenIPMI.so: $(OpenIPMI_OBJ) - $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI - rm -f OpenIPMI.so - mv .libs/OpenIPMI.so . -- rm -rf .libs - - dummystuff.lo: dummystuff.c - $(LIBTOOL) --mode=compile $(COMPILE) -c $< --- -1.9.1 - diff --git a/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch b/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch index 6f16234bc7..83485a9e60 100644 --- a/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch +++ b/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch @@ -13,73 +13,38 @@ Signed-off-by: Jackie Huang unix/Makefile.am | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) -diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am -index 00c3d2b..0fa85d7 100644 ---- a/cmdlang/Makefile.am -+++ b/cmdlang/Makefile.am -@@ -16,7 +16,7 @@ libOpenIPMIcmdlang_la_LIBADD = -lm \ +Index: OpenIPMI-2.0.24/cmdlang/Makefile.am +=================================================================== +--- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am ++++ OpenIPMI-2.0.24/cmdlang/Makefile.am +@@ -15,8 +15,7 @@ libOpenIPMIcmdlang_la_SOURCES = cmdlang. + libOpenIPMIcmdlang_la_LIBADD = -lm \ $(top_builddir)/utils/libOpenIPMIutils.la \ $(top_builddir)/lib/libOpenIPMI.la - libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMIcmdlang.map -L$(libdir) -+ -Wl,-Map -Wl,libOpenIPMIcmdlang.map +-libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) bin_PROGRAMS = openipmish -diff --git a/glib/Makefile.am b/glib/Makefile.am -index 671cae2..eff55f3 100644 ---- a/glib/Makefile.am -+++ b/glib/Makefile.am -@@ -11,14 +11,14 @@ libOpenIPMIglib_la_SOURCES = glib_os_hnd.c - libOpenIPMIglib_la_CFLAGS = $(GLIB_CFLAGS) $(AM_CFLAGS) - libOpenIPMIglib_la_LIBADD = $(GDBM_LIB) - libOpenIPMIglib_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMIglib.map $(GLIB_LIBS) -L$(libdir) \ -+ -Wl,-Map -Wl,libOpenIPMIglib.map $(GLIB_LIBS) \ - -rpath $(libdir) - - libOpenIPMIglib12_la_SOURCES = glib_os_hnd.c - libOpenIPMIglib12_la_CFLAGS = $(GLIB12_CFLAGS) $(AM_CFLAGS) - libOpenIPMIglib12_la_LIBADD = $(GDBM_LIB) - libOpenIPMIglib12_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMIglib12.map $(GLIB12_LIBS) -L$(libdir) \ -+ -Wl,-Map -Wl,libOpenIPMIglib12.map $(GLIB12_LIBS) \ - -rpath $(libdir) - - CLEANFILES = libOpenIPMIglib.map libOpenIPMIglib12.map -diff --git a/tcl/Makefile.am b/tcl/Makefile.am -index b702819..282619c 100644 ---- a/tcl/Makefile.am -+++ b/tcl/Makefile.am -@@ -11,7 +11,7 @@ libOpenIPMItcl_la_SOURCES = tcl_os_hnd.c - libOpenIPMItcl_la_CFLAGS = $(TCL_CFLAGS) $(AM_CFLAGS) - libOpenIPMItcl_la_LIBADD = $(GDBM_LIB) - libOpenIPMItcl_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMItcl.map $(TCL_LIBS) -L$(libdir) \ -+ -Wl,-Map -Wl,libOpenIPMItcl.map $(TCL_LIBS) \ - -rpath $(libdir) - - noinst_PROGRAMS = test_handlers -diff --git a/unix/Makefile.am b/unix/Makefile.am -index a792147..a108bc6 100644 ---- a/unix/Makefile.am -+++ b/unix/Makefile.am -@@ -11,13 +11,13 @@ libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c +Index: OpenIPMI-2.0.24/unix/Makefile.am +=================================================================== +--- OpenIPMI-2.0.24.orig/unix/Makefile.am ++++ OpenIPMI-2.0.24/unix/Makefile.am +@@ -10,14 +10,12 @@ lib_LTLIBRARIES = libOpenIPMIposix.la li + libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c libOpenIPMIpthread_la_LIBADD = -lpthread $(GDBM_LIB) \ - $(top_builddir)/utils/libOpenIPMIutils.la - libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMIpthread.map -L$(libdir) -+ -Wl,-Map -Wl,libOpenIPMIpthread.map + $(top_builddir)/utils/libOpenIPMIutils.la $(RT_LIB) +-libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) libOpenIPMIposix_la_SOURCES = posix_os_hnd.c selector.c libOpenIPMIposix_la_LIBADD = $(top_builddir)/utils/libOpenIPMIutils.la \ - $(GDBM_LIB) - libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ -- -Wl,-Map -Wl,libOpenIPMIposix.map -L$(libdir) -+ -Wl,-Map -Wl,libOpenIPMIposix.map + $(GDBM_LIB) $(RT_LIB) +-libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \ +- -L$(libdir) ++libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) noinst_HEADERS = heap.h --- -1.7.1 - diff --git a/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb b/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb deleted file mode 100644 index 9f4b0ff266..0000000000 --- a/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb +++ /dev/null @@ -1,112 +0,0 @@ -SUMMARY = "IPMI (Intelligent Platform Management Interface) library and tools" -DESCRIPTION = "OpenIPMI is an effort to create a full-function IPMI system, \ -to allow full access to all IPMI information on a server \ -and to abstract it to a level that will make it easy to use" - -HOMEPAGE = "http://openipmi.sourceforge.net" - -DEPENDS = " \ - glib-2.0 \ - ncurses \ - net-snmp \ - openssl \ - popt \ - python \ - swig-native \ - " - -LICENSE = "GPLv2 & LGPLv2.1 & BSD" - -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499 \ - file://COPYING.BSD;md5=4b318d4160eb69c8ee53452feb1b4cdf \ - " - -SRC_URI = "${SOURCEFORGE_MIRROR}/openipmi/OpenIPMI-${PV}.tar.gz \ - file://fix-symlink-install-error-in-cmdlang.patch \ - file://openipmi-no-openipmigui-man.patch \ - file://openipmi-remove-host-path-from-la_LDFLAGS.patch \ - file://openipmi-don-t-rm-.libs.patch \ - file://ipmi-init-fix-the-arguments.patch \ - file://makefile-add-ldflags.patch \ - file://do-not-install-pyc-and-pyo.patch \ - file://include_sys_types.patch \ - file://openipmi-helper \ - file://ipmi.service \ - " - -SRC_URI[md5sum] = "9a4e1f6bb073379c494839201ea10aee" -SRC_URI[sha256sum] = "4988900043c35fcfa9b2bf275d6593904f6429221befb770ba6ecb5502108e55" - -S = "${WORKDIR}/OpenIPMI-${PV}" - -inherit autotools-brokensep pkgconfig pythonnative perlnative update-rc.d systemd - -EXTRA_OECONF = "--disable-static \ - --with-perl='${STAGING_BINDIR_NATIVE}/perl-native/perl' \ - --with-python='${STAGING_BINDIR_NATIVE}/python-native/python' \ - --with-pythoninstall='${PYTHON_SITEPACKAGES_DIR}' \ - --with-glibver=2.0 --with-glib12=no" - -PACKAGECONFIG ??= "gdbm" -PACKAGECONFIG[gdbm] = "ac_cv_header_gdbm_h=yes,ac_cv_header_gdbm_h=no,gdbm," - -PACKAGES += "${PN}-perl ${PN}-python" - -FILES_${PN}-perl = " \ - ${libdir}/perl/vendor_perl/*/OpenIPMI.pm \ - ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/OpenIPMI.so \ - " - -FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}" - -FILES_${PN}-dbg += " \ - ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/.debug \ - ${PYTHON_SITEPACKAGES_DIR}/.debug \ - " - -do_configure () { - - # Let's perform regular configuration first then handle perl issues. - autotools_do_configure - - perl_ver=`perl -V:version | cut -d\' -f 2` - - # Force openipmi perl bindings to be compiled using perl-native instead of - # the host's perl. Set the proper install directory for the resulting - # openipmi.pm and openipmi.so - for i in ${S}/swig/Makefile ${S}/swig/perl/Makefile; do - echo "SAL: i = $i" - echo "SAL: STAGING_INCDIR_NATIVE = $STAGING_INCDIR_NATIVE" - echo "SAL: libdir = $libdir" - sed -i -e "/^PERL_CFLAGS/s:-I/usr/local/include:-I${STAGING_INCDIR_NATIVE}:g" $i - sed -i -e "/^PERL_INSTALL_DIR/s:^PERL_INSTALL_DIR = .*:PERL_INSTALL_DIR = ${libdir}/perl/vendor_perl/$perl_ver:g" $i - done -} - -do_install_append () { - echo "SAL: D = $D" - echo "SAL: libdir = $libdir" - install -m 0755 -d ${D}${sysconfdir}/sysconfig ${D}${sysconfdir}/init.d - install -m 0755 ${S}/ipmi.init ${D}${sysconfdir}/init.d/ipmi - install -m 0644 ${S}/ipmi.sysconf ${D}${sysconfdir}/sysconfig/ipmi - # SAL: mv: cannot stat `/localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/openipmi-2.0.19-r4/image/usr/lib64/perl5': No such file or directory - # SAL: real path to perl is /localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/perl-5.14.2-r8.3/package/usr/lib64/perl5 and it is a symlink to perl so no need to mv. - if [ -d ${D}${libdir}/perl5 ] - then - mv ${D}${libdir}/perl5 ${D}${libdir}/perl - fi - - # for systemd - install -d ${D}${systemd_unitdir}/system - install -m 0664 ${WORKDIR}/ipmi.service ${D}${systemd_unitdir}/system - sed -i -e "s,@LIBEXECDIR@,${libexecdir},g" ${D}${systemd_unitdir}/system/ipmi.service - install -d ${D}${libexecdir} - install -m 0755 ${WORKDIR}/openipmi-helper ${D}${libexecdir} -} - -INITSCRIPT_NAME = "ipmi" -INITSCRIPT_PARAMS = "start 30 . stop 70 0 1 2 3 4 5 6 ." - -SYSTEMD_SERVICE_${PN} = "ipmi.service" -SYSTEMD_AUTO_ENABLE = "disable" diff --git a/meta-oe/recipes-support/openipmi/openipmi_2.0.24.bb b/meta-oe/recipes-support/openipmi/openipmi_2.0.24.bb new file mode 100644 index 0000000000..40395a35c0 --- /dev/null +++ b/meta-oe/recipes-support/openipmi/openipmi_2.0.24.bb @@ -0,0 +1,109 @@ +SUMMARY = "IPMI (Intelligent Platform Management Interface) library and tools" +DESCRIPTION = "OpenIPMI is an effort to create a full-function IPMI system, \ +to allow full access to all IPMI information on a server \ +and to abstract it to a level that will make it easy to use" + +HOMEPAGE = "http://openipmi.sourceforge.net" + +DEPENDS = " \ + glib-2.0 \ + ncurses \ + net-snmp \ + openssl \ + popt \ + python \ + swig-native \ + " + +LICENSE = "GPLv2 & LGPLv2.1 & BSD" + +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499 \ + file://COPYING.BSD;md5=4b318d4160eb69c8ee53452feb1b4cdf \ + " + +SRC_URI = "${SOURCEFORGE_MIRROR}/openipmi/OpenIPMI-${PV}.tar.gz \ + file://fix-symlink-install-error-in-cmdlang.patch \ + file://openipmi-no-openipmigui-man.patch \ + file://openipmi-remove-host-path-from-la_LDFLAGS.patch \ + file://ipmi-init-fix-the-arguments.patch \ + file://do-not-install-pyc-and-pyo.patch \ + file://include_sys_types.patch \ + file://openipmi-helper \ + file://ipmi.service \ + " + +S = "${WORKDIR}/OpenIPMI-${PV}" +SRC_URI[md5sum] = "58f9542cbfcb5fe250b77cf88345e1ec" +SRC_URI[sha256sum] = "bca39a27071278a8b74610181ede8df51e155e5e9031bc8eaa3699d1720292b4" + +inherit autotools-brokensep pkgconfig pythonnative perlnative update-rc.d systemd + +EXTRA_OECONF = "--disable-static \ + --with-perl='${STAGING_BINDIR_NATIVE}/perl-native/perl' \ + --with-python='${STAGING_BINDIR_NATIVE}/python-native/python' \ + --with-pythoninstall='${PYTHON_SITEPACKAGES_DIR}' \ + --with-glibver=2.0" + +PACKAGECONFIG ??= "gdbm" +PACKAGECONFIG[gdbm] = "ac_cv_header_gdbm_h=yes,ac_cv_header_gdbm_h=no,gdbm," + +PACKAGES += "${PN}-perl ${PN}-python" + +FILES_${PN}-perl = " \ + ${libdir}/perl/vendor_perl/*/OpenIPMI.pm \ + ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/OpenIPMI.so \ + " + +FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}" + +FILES_${PN}-dbg += " \ + ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/.debug \ + ${PYTHON_SITEPACKAGES_DIR}/.debug \ + " + +do_configure () { + + # Let's perform regular configuration first then handle perl issues. + autotools_do_configure + + perl_ver=`perl -V:version | cut -d\' -f 2` + + # Force openipmi perl bindings to be compiled using perl-native instead of + # the host's perl. Set the proper install directory for the resulting + # openipmi.pm and openipmi.so + for i in ${S}/swig/Makefile ${S}/swig/perl/Makefile; do + echo "SAL: i = $i" + echo "SAL: STAGING_INCDIR_NATIVE = $STAGING_INCDIR_NATIVE" + echo "SAL: libdir = $libdir" + sed -i -e "/^PERL_CFLAGS/s:-I/usr/local/include:-I${STAGING_INCDIR_NATIVE}:g" $i + sed -i -e "/^PERL_INSTALL_DIR/s:^PERL_INSTALL_DIR = .*:PERL_INSTALL_DIR = ${libdir}/perl/vendor_perl/$perl_ver:g" $i + done +} + +do_install_append () { + echo "SAL: D = $D" + echo "SAL: libdir = $libdir" + install -m 0755 -d ${D}${sysconfdir}/sysconfig ${D}${sysconfdir}/init.d + install -m 0755 ${S}/ipmi.init ${D}${sysconfdir}/init.d/ipmi + install -m 0644 ${S}/ipmi.sysconf ${D}${sysconfdir}/sysconfig/ipmi + # SAL: mv: cannot stat `/localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/openipmi-2.0.19-r4/image/usr/lib64/perl5': No such file or directory + # SAL: real path to perl is /localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/perl-5.14.2-r8.3/package/usr/lib64/perl5 and it is a symlink to perl so no need to mv. + if [ -d ${D}${libdir}/perl5 ] + then + mv ${D}${libdir}/perl5 ${D}${libdir}/perl + fi + + # for systemd + install -d ${D}${systemd_unitdir}/system + install -m 0664 ${WORKDIR}/ipmi.service ${D}${systemd_unitdir}/system + sed -i -e "s,@LIBEXECDIR@,${libexecdir},g" ${D}${systemd_unitdir}/system/ipmi.service + install -d ${D}${libexecdir} + install -m 0755 ${WORKDIR}/openipmi-helper ${D}${libexecdir} +} + +INITSCRIPT_NAME = "ipmi" +INITSCRIPT_PARAMS = "start 30 . stop 70 0 1 2 3 4 5 6 ." + +SYSTEMD_SERVICE_${PN} = "ipmi.service" +SYSTEMD_AUTO_ENABLE = "disable" -- cgit 1.2.3-korg