From dec5c702fa2064217cc87441ed461e088012df0e Mon Sep 17 00:00:00 2001 From: Jagadeesh Krishnanjanappa Date: Fri, 21 Aug 2015 22:38:26 +0530 Subject: dmapi: add new recipe The Data Management API (DMAPI/XDSM) allows implementation of hierarchical storage management software with no kernel modifications as well as high-performance dump programs without requiring "raw" access to the disk and knowledge of filesystem structures.This interface is implemented by the libdm library. Signed-off-by: Jagadeesh Krishnanjanappa Signed-off-by: Martin Jansa --- .../recipes-utils/dmapi/dmapi_2.2.12.bb | 31 ++++ .../files/dmapi_aarch64_configure_support.patch | 37 ++++ .../dmapi/files/remove-install-as-user.patch | 205 +++++++++++++++++++++ 3 files changed, 273 insertions(+) create mode 100644 meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb create mode 100644 meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch create mode 100644 meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch (limited to 'meta-filesystems') diff --git a/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb b/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb new file mode 100644 index 0000000000..4ff95f9771 --- /dev/null +++ b/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb @@ -0,0 +1,31 @@ +SUMMARY = "Library functions to get attribute bits" +DESCRIPTION = "The Data Management API (DMAPI/XDSM) allows implementation \ + of hierarchical storage management software with no kernel \ + modifications as well as high-performance dump programs \ + without requiring "raw" access to the disk and knowledge \ + of filesystem structures.This interface is implemented by \ + the libdm library." + +HOMEPAGE = "http://oss.sgi.com/projects/xfs" +SECTION = "base" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://doc/COPYING;md5=1678edfe8de9be9564d23761ae2fa794" +DEPENDS = "xfsprogs" + +SRC_URI = "ftp://oss.sgi.com/projects/xfs/cmd_tars/dmapi-${PV}.tar.gz \ + file://remove-install-as-user.patch \ + file://dmapi_aarch64_configure_support.patch \ + " +SRC_URI[md5sum] = "cd825d4e141c16011367e0a0dd98c9c5" +SRC_URI[sha256sum] = "b18e34f47374f6adf7c164993c26df36986a009b86aa004ef9444102653aea69" + +inherit autotools-brokensep + +PARALLEL_MAKE = "" +EXTRA_OEMAKE += "LIBTOOL="${HOST_SYS}-libtool --tag=CC" V=1" + +do_install () { + export DIST_ROOT=${D} + install -d ${D}${libdir} + oe_runmake install install-dev PKG_DEVLIB_DIR=${libdir} +} diff --git a/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch b/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch new file mode 100644 index 0000000000..98753b742a --- /dev/null +++ b/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch @@ -0,0 +1,37 @@ +Add config support to cross compile dmapi for +aarch64 architecture + +Upstream-Status: Pending + +Signed-off-by: Jagadeesh Krishnanjanappa + +--- dmapi-2.2.12_org/config.sub 2012-12-12 23:03:05.000000000 +0530 ++++ dmapi-2.2.12/config.sub 2014-03-24 16:49:56.771993523 +0530 +@@ -246,6 +246,7 @@ case $basic_machine in + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ ++ | aarch64 | aarch64be \ + | bfin \ + | c4x | clipper \ + | d10v | d30v | dlx | dsp16xx \ +@@ -326,6 +327,7 @@ case $basic_machine in + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ ++ | aarch64-* | aarch64be-* \ + | avr-* | avr32-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ +--- dmapi-2.2.12_org/config.guess 2012-12-12 23:03:05.000000000 +0530 ++++ dmapi-2.2.12/config.guess 2014-03-24 16:49:56.771993523 +0530 +@@ -864,6 +864,9 @@ EOF + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + fi + exit ;; ++ aarch64*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; diff --git a/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch b/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch new file mode 100644 index 0000000000..e761db371f --- /dev/null +++ b/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch @@ -0,0 +1,205 @@ +remove install as user + +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Hongxu Jia +--- + include/buildmacros | 2 +- + include/install-sh | 95 ++++++++--------------------------------------------- + 2 files changed, 14 insertions(+), 83 deletions(-) + +diff --git a/include/buildmacros b/include/buildmacros +index 7a01880..0840d55 100644 +--- a/include/buildmacros ++++ b/include/buildmacros +@@ -30,7 +30,7 @@ OBJECTS = $(ASFILES:.s=.o) \ + $(LFILES:.l=.o) \ + $(YFILES:%.y=%.tab.o) + +-INSTALL = $(TOPDIR)/install-sh -o $(PKG_USER) -g $(PKG_GROUP) ++INSTALL = $(TOPDIR)/install-sh + + IMAGES_DIR = $(TOPDIR)/all-images + DIST_DIR = $(TOPDIR)/dist +diff --git a/include/install-sh b/include/install-sh +index c952a71..b9d66f7 100755 +--- a/include/install-sh ++++ b/include/install-sh +@@ -24,11 +24,11 @@ + # set set | yes yes + # + _usage() { +- echo "Usage: $prog [-o owner] [-g group] [-m mode] -d directory" +- echo "or $prog [-D] [-o owner] [-g group] [-m mode] file directory/file" +- echo "or $prog [-o owner] [-g group] [-m mode] file [file ...] directory" ++ echo "Usage: $prog [-m mode] -d directory" ++ echo "or $prog [-m mode] file directory/file" ++ echo "or $prog [-m mode] file [file ...] directory" + echo "or $prog -S file target (creates \"target\" symlink)" +- echo "or $prog -T lt_arg [-o owner] [-g group] [-m mode] libtool.lai directory" ++ echo "or $prog -T lt_arg [-m mode] libtool.lai directory" + echo "" + echo "The \$DIST_MANIFEST and \$DIST_ROOT environment variables affect the" + echo "behaviour of this command - see comments in the script." +@@ -38,32 +38,6 @@ _usage() { + exit 1 + } + +-_chown () +-{ +- _st=255 +- if [ $# -eq 3 ] ; then +- chown $1:$2 $3 +- _st=$? +- if [ $_st -ne 0 ] ; then +- if [ $REAL_UID != '0' ] ; then +- if [ ! -f $DIST_ROOT/.chown.quiet ] ; then +- echo '===============================================' +- echo Ownership of files under ${DIST_ROOT:-/} +- echo cannot be changed +- echo '===============================================' +- if [ -n "$DIST_ROOT" ] ; then +- touch $DIST_ROOT/.chown.quiet +- fi +- fi +- _st=0 +- fi +- fi +- fi +- +- return $_st +-} +- +- + _manifest () + { + echo $* | sed -e 's/\/\//\//g' >>${DIST_MANIFEST:-/dev/null} +@@ -77,9 +51,6 @@ Sflag=false + Tflag=false + DIRMODE=755 + FILEMODE=644 +-OWNER=`id -u` +-GROUP=`id -g` +-REAL_UID=$OWNER + + # default is to install and don't append manifest + INSTALL=true +@@ -94,24 +65,16 @@ MANIFEST=: + + if $INSTALL + then +- CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod; CHOWN=_chown ++ CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod; + else +- CP=true; LN=true; MKDIR=true; CHMOD=true; CHOWN=true ++ CP=true; LN=true; MKDIR=true; CHMOD=true; + fi + +-[ -n "$DIST_ROOT" -a $REAL_UID -ne 0 ] && CHOWN=true +- +-while getopts "Dcm:d:S:o:g:T:" c $* ++while getopts "Dcm:d:S:T:" c $* + do + case $c in + c) + ;; +- g) +- GROUP=$OPTARG +- ;; +- o) +- OWNER=$OPTARG +- ;; + m) + DIRMODE=`expr $OPTARG` + FILEMODE=$DIRMODE +@@ -146,18 +109,7 @@ then + # first usage + # + $MKDIR -p $dir +- status=$? +- if [ $status -eq 0 ] +- then +- $CHMOD $DIRMODE $dir +- status=$? +- fi +- if [ $status -eq 0 ] +- then +- $CHOWN $OWNER $GROUP $dir +- status=$? +- fi +- $MANIFEST d $DIRMODE $OWNER $GROUP ${dir#$DIST_ROOT} ++ $MANIFEST d $DIRMODE ${dir#$DIST_ROOT} + elif $Sflag + then + # +@@ -203,7 +155,7 @@ then + install_name=$target/$solib + $CP $solib $install_name + status=$? +- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$solib ${install_name#$DIST_ROOT} ++ $MANIFEST f $FILEMODE $HERE/$solib ${install_name#$DIST_ROOT} + break + fi + done +@@ -254,7 +206,7 @@ then + install_name=$target/$old_library + $CP $old_library $install_name + status=$? +- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$old_library ${install_name#$DIST_ROOT} ++ $MANIFEST f $FILEMODE $HERE/$old_library ${install_name#$DIST_ROOT} + ;; + *) + echo "$prog: -T $lt_install invalid" +@@ -267,7 +219,6 @@ then + if [ $status -eq 0 ] + then + $CHMOD $FILEMODE $install_name +- $CHOWN $OWNER $GROUP $install_name + fi + ;; + esac +@@ -292,23 +243,10 @@ else + then + if [ -f $dir/$f ] + then +- $CHMOD $FILEMODE $dir/$f +- status=$? +- if [ $status -eq 0 ] +- then +- $CHOWN $OWNER $GROUP $dir/$f +- status=$? +- fi +- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f ++ $MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f + else + $CHMOD $FILEMODE $dir +- status=$? +- if [ $status -eq 0 ] +- then +- $CHOWN $OWNER $GROUP $dir +- status=$? +- fi +- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$dir ${dir#$DIST_ROOT} ++ $MANIFEST f $FILEMODE $HERE/$dir ${dir#$DIST_ROOT} + fi + fi + else +@@ -334,14 +272,7 @@ else + status=$? + if [ $status -eq 0 ] + then +- $CHMOD $FILEMODE $dir/$f +- status=$? +- if [ $status -eq 0 ] +- then +- $CHOWN $OWNER $GROUP $dir/$f +- status=$? +- fi +- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f ++ $MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f + fi + [ $status -ne 0 ] && break + done +-- +1.8.1.2 + -- cgit 1.2.3-korg