diff options
Diffstat (limited to 'import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip')
2 files changed, 66 insertions, 0 deletions
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch new file mode 100644 index 000000000..a3b02c5dc --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/files/do_not_override_compiler_and_do_not_strip.patch @@ -0,0 +1,31 @@ +do not override compiler and do not strip + +The default makefile sets the compiler to g++ or gcc. This leads to a wrong architecture when cross-compiling. +Remove the hardcoded compiler and just append the flags to CXX and CC. + +Upstream-Status: Pending +Signed-off-by: Raphael Freudiger <raphael.freudiger@siemens.com> +Reviewed-By: Pascal Bach <pascal.bach@siemens.com> + +Index: p7zip_9.20.1/makefile.machine +===================================================================== +--- p7zip_9.20.1/makefile.machine 2011-03-13 12:54:57.000000000 +0100 ++++ p7zip_9.20.1/makefile.machine 2015-02-03 08:39:44.427696944 +0100 +@@ -4,14 +4,14 @@ + + OPTFLAGS=-O + +-ALLFLAGS=${OPTFLAGS} -pipe -s \ ++ALLFLAGS=${OPTFLAGS} -pipe \ + -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \ + -DNDEBUG -D_REENTRANT -DENV_UNIX \ + -D_7ZIP_LARGE_PAGES \ + $(LOCAL_FLAGS) + +-CXX=g++ $(ALLFLAGS) +-CC=gcc $(ALLFLAGS) ++CXX+=$(ALLFLAGS) ++CC+=$(ALLFLAGS) + CC_SHARED=-fPIC + LINK_SHARED=-fPIC -shared + diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_9.20.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_9.20.1.bb new file mode 100644 index 000000000..b89fc42de --- /dev/null +++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_9.20.1.bb @@ -0,0 +1,35 @@ +SUMMARY = "7-zip is a commandline utility handling 7z archives." +HOMEPAGE = "http://www.7-zip.org/" +LICENSE = "LGPL-2.1+ & unRAR" +LIC_FILES_CHKSUM = "file://DOCS/copying.txt;md5=ecfc54c9e37b63ac58900061ce2eab5a \ + file://DOCS/unRarLicense.txt;md5=9c87ddde469ef94aed153b0951d088de" + +SRC_URI = "http://downloads.sourceforge.net/p7zip/p7zip/${PV}/p7zip_${PV}_src_all.tar.bz2 \ + file://do_not_override_compiler_and_do_not_strip.patch" +SRC_URI[md5sum] = "bd6caaea567dc0d995c990c5cc883c89" +SRC_URI[sha256sum] = "49557e7ffca08100f9fc687f4dfc5aea703ca207640c76d9dee7b66f03cb4782" + +S = "${WORKDIR}/${BPN}_${PV}" + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${S}/bin/* ${D}${bindir} +} + +# all3: to build bin/7za, bin/7z (with its plugins), bin/7zr and bin/7zCon.sfx +EXTRA_OEMAKE_class-native = "all3" + +do_install_class-native() { + install -d ${D}${bindir} + install -d ${D}${bindir}/Codecs + install -m 0755 ${S}/bin/7* ${D}${bindir} + install -m 0755 ${S}/bin/Codecs/* ${D}${bindir}/Codecs + + # Create a shell script wrapper to execute next to 7z.so + mv ${D}${bindir}/7z ${D}${bindir}/7z.bin + echo "#! /bin/sh" > ${D}${bindir}/7z + echo "exec ${D}${bindir}/7z.bin \"\$@\"" >> ${D}${bindir}/7z + chmod 0755 ${D}${bindir}/7z +} + +BBCLASSEXTEND += "native" |