summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/7zip/7zip_26.00.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-extended/7zip/7zip_26.00.bb')
-rw-r--r--meta-oe/recipes-extended/7zip/7zip_26.00.bb71
1 files changed, 71 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/7zip/7zip_26.00.bb b/meta-oe/recipes-extended/7zip/7zip_26.00.bb
new file mode 100644
index 0000000000..85219b5052
--- /dev/null
+++ b/meta-oe/recipes-extended/7zip/7zip_26.00.bb
@@ -0,0 +1,71 @@
1SUMMARY = "7-zip is a commandline utility handling 7z archives."
2HOMEPAGE = "http://www.7-zip.org/"
3LICENSE = "LGPL-2.1-or-later & unRAR & PD & BSD-2-Clause & BSD-3-Clause"
4LIC_FILES_CHKSUM = "file://DOC/copying.txt;md5=4fbd65380cdd255951079008b364516c \
5 file://DOC/unRarLicense.txt;md5=9c87ddde469ef94aed153b0951d088de \
6 file://DOC/License.txt;md5=a4ae6e492874f0008c7600c2ef80daa4 \
7 "
8
9CVE_PRODUCT = "7-zip 7zip"
10SRC_URI = "git://github.com/ip7z/7zip.git;protocol=https;branch=main;tag=${PV} \
11 file://0001-support-yocto-cross-compiling.patch \
12 file://0001-Remove-treating-warning-as-errors.patch \
13 file://7z_wrapper.sh \
14 "
15SRCREV = "839151eaaad24771892afaae6bac690e31e58384"
16
17UPSTREAM_CHECK_URI = "https://github.com/ip7z/7zip/releases/latest"
18
19EXTRA_OEMAKE += " \
20 CXXFLAGS_EXTRA='${CXXFLAGS}' \
21 CFLAGS_BASE2='${CFLAGS}' \
22 LDFLAGS_STATIC_3='${LDFLAGS}' \
23"
24
25# Support clang
26MAKEFILE ?= "../../cmpl_gcc.mak"
27MAKEFILE:class-target:toolchain-clang = "../../cmpl_clang.mak"
28
29do_compile() {
30 oe_runmake -C CPP/7zip/Bundles/Alone2 -f ${MAKEFILE}
31 oe_runmake -C CPP/7zip/Bundles/Format7zF -f ${MAKEFILE}
32 oe_runmake -C CPP/7zip/UI/Console -f ${MAKEFILE}
33 oe_runmake -C CPP/7zip/Bundles/SFXCon -f ${MAKEFILE}
34 oe_runmake -C CPP/7zip/Bundles/Alone -f ${MAKEFILE}
35 oe_runmake -C CPP/7zip/Bundles/Alone7z -f ${MAKEFILE}
36}
37
38FILES:${PN} += "${libdir}/*"
39
40FILES_SOLIBSDEV = ""
41INSANE_SKIP:${PN} += "dev-so"
42
43INSTALLDIR ?= "g"
44INSTALLDIR:class-target:toolchain-clang = "c"
45
46do_install() {
47 install -d ${D}${bindir}
48 install -m 0755 ${S}/CPP/7zip/Bundles/Alone/b/${INSTALLDIR}/7za ${D}${bindir}
49 install -m 0755 ${S}/CPP/7zip/Bundles/Alone7z/b/${INSTALLDIR}/7zr ${D}${bindir}
50 install -m 0755 ${S}/CPP/7zip/UI/Console/b/${INSTALLDIR}/7z ${D}${bindir}/7z.real
51 install -m 0755 ${UNPACKDIR}/7z_wrapper.sh ${D}${bindir}/7z
52
53 install -d ${D}${libdir}
54 install -m 0755 ${S}/CPP/7zip/Bundles/Format7zF/b/${INSTALLDIR}/7z.so ${D}${libdir}/lib7z.so
55 ln -rsn ${D}${libdir}/lib7z.so ${D}${bindir}/7z.so
56
57 # install headers (for development) and readme (for version information)
58 for header_file in $(find ${S}/CPP/${BPN} ${S}/CPP/Common ${S}/C -name "*.h"); do
59 header_dir=$(dirname $(echo $header_file | sed "s|${S}/||"))
60 install -d ${D}${includedir}/${BPN}/$header_dir
61 install -m 0644 $header_file ${D}${includedir}/${BPN}/$header_dir
62 done
63 install -d ${D}${includedir}/${BPN}/DOC
64 install -m 0644 ${S}/DOC/readme.txt ${D}${includedir}/${BPN}/DOC
65}
66
67PROVIDES += "p7zip"
68RPROVIDES:${PN} += "lib7z.so()(64bit) 7z lib7z.so p7zip"
69RPROVIDES:${PN}-dev += "lib7z.so()(64bit) 7z lib7z.so"
70
71BBCLASSEXTEND = "native nativesdk"