# Copyright 2018 gordonb3 # Distributed under the terms of the GNU General Public License v2 # $Header$ EAPI="5" inherit eutils gnome2 flag-o-matic cmake-utils toolchain-funcs SIG_PV=2.4.1 UTL_PV=0.7.39 DESCRIPTION="Bubba disk manager handles disk functions for the Bubba web frontend" HOMEPAGE="http://www.excito.com/" SRC_URI=" http://b3.update.excito.org/pool/main/b/${PN}/${PN}_${PV}.tar.gz https://download.gnome.org/sources/libsigc++/2.4/libsigc++-${SIG_PV}.tar.xz http://b3.update.excito.org/pool/main/libe/libeutils/libeutils_${UTL_PV}.tar.gz " RESTRICT="mirror" LICENSE="GPL-3" SLOT="0" KEYWORDS="~arm ~ppc" IUSE="" DEPEND=" dev-libs/glib dev-libs/popt dev-tcltk/expect dev-util/cppunit dev-util/cmake sys-block/parted sys-devel/libtool sys-devel/m4 sys-fs/lvm2 " RDEPEND="${DEPEND} sys-fs/mdadm " S=${WORKDIR}/${PN} CMAKE_IN_SOURCE_BUILD=yes pkg_setup() { if [ ! -e ${ROOT}/usr/lib/libexpect.so ]; then rm -f ${ROOT}/usr/lib/libexpect.so ln -s $(ls ${ROOT}/usr/lib/expect*/libexpect*.so) ${ROOT}/usr/lib/libexpect.so fi } sigc_prepare() { cd ../libsigc++-${SIG_PV} sed -i 's|^\(SUBDIRS =.*\)examples\(.*\)$|\1\2|' \ Makefile.am Makefile.in || die "sed examples failed" # don't waste time building tests unless USE=test sed -i 's|^\(SUBDIRS =.*\)tests\(.*\)$|\1\2|' \ Makefile.am Makefile.in || die "sed tests failed" gnome2_src_prepare cd - &>/dev/null } sigc_configure() { einfo "configuring libsigc++" cd ../libsigc++-${SIG_PV} filter-flags -fno-exceptions #84263 ECONF_SOURCE="${WORKDIR}/libsigc++-${SIG_PV}" gnome2_src_configure --enable-static cd - &>/dev/null } sigc_compile() { einfo "compiling libsigc++" cd ../libsigc++-${SIG_PV} default cd - &>/dev/null } utl_prepare() { S=${WORKDIR}/libeutils pushd "${S}" > /dev/null epatch ${FILESDIR}/libeutils-${UTL_PV}.patch ln -s ${WORKDIR}/libsigc++-${SIG_PV} include sed -e "s/\$.SIGC++_CFLAGS./-I..\/include/" -i libeutils/CMakeLists.txt sed -e "/SIGC++/d" -e "/TUT/d" -e "s/ on /@@/" -e "s/ off / on /" -e "s/@@/ off /" -i CMakeLists.txt mkdir ${WORKDIR}/libsigc++-${SIG_PV}/sigc++/.libs ${WORKDIR}/libeutils/lib ln -s ${WORKDIR}/libsigc++-${SIG_PV}/sigc++/.libs ${WORKDIR}/libeutils/lib/sigc++ popd > /dev/null cmake-utils_src_prepare S=${WORKDIR}/${PN} } utl_configure() { einfo "configuring eutils" S=${WORKDIR}/libeutils local mycmakeargs=( -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=OFF -DBUILD_STATIC_LIBRARIES=ON ) cmake-utils_src_configure S=${WORKDIR}/${PN} } utl_compile() { einfo "compiling eutils" S=${WORKDIR}/libeutils cmake-utils_src_compile S=${WORKDIR}/${PN} } src_prepare() { # prepare include libraries sigc_prepare utl_prepare sed -i "s/ \(\/lib\/libparted.so.2\)/ \/usr\1/" Makefile sed -i "s/\/sbin\/udevadm/\/bin\/udevadm/" Disks.cpp # static linking of libsigc++ and libeutils sed \ -e "s/cflags libeutils)/cflags glib-2.0) -I\$(CURDIR)\/include/" \ -e "s/\/usr\/lib\/libparted.so.2/libeutils.a libsigc-2.0.a -lpthread -lexpect/" \ -e "s/sigc++-2.0 libeutils/glib-2.0/" \ -i Makefile } src_configure() { sigc_configure utl_configure } src_compile() { sigc_compile utl_compile einfo "compiling main application" # add include folder and static libs ln -s ${WORKDIR}/libsigc++-${SIG_PV} ${S}/include ln -s ${WORKDIR}/libeutils/libeutils ${S}/include/ cp -al ${S}/include/libeutils/json/include/json/* ${S}/include/libeutils/json/ ln -s ${WORKDIR}/libsigc++-${SIG_PV}/sigc++/.libs/libsigc-2.0.a ${S}/ ln -s ${WORKDIR}/libeutils/libeutils/libeutils.a ${S}/ emake CXX=$(tc-getCXX) } src_install() { exeinto /opt/bubba/sbin doexe diskmanager dodoc ${FILESDIR}/Changelog debian/copyright newdoc debian/changelog changelog.debian }