diff options
Diffstat (limited to 'recipes-bsp/isp-imx/isp-imx_4.2.2.25.1.bb')
-rw-r--r-- | recipes-bsp/isp-imx/isp-imx_4.2.2.25.1.bb | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.25.1.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.25.1.bb new file mode 100644 index 000000000..28ab57b74 --- /dev/null +++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.25.1.bb | |||
@@ -0,0 +1,99 @@ | |||
1 | # Copyright (C) 2020-2024 NXP | ||
2 | |||
3 | DESCRIPTION = "i.MX Verisilicon Software ISP" | ||
4 | LICENSE = "Proprietary" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=c0fb372b5d7f12181de23ef480f225f3" | ||
6 | DEPENDS = "boost libdrm virtual/libg2d libtinyxml2 jsoncpp patchelf-native" | ||
7 | |||
8 | SRC_URI = " \ | ||
9 | ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \ | ||
10 | " | ||
11 | IMX_SRCREV_ABBREV = "327f21d" | ||
12 | S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" | ||
13 | |||
14 | SRC_URI[sha256sum] = "f57c6fe1c2dd1c8e5991a625d0b3a1dbfdfe6d39a1a116a904d543faa0f4f6f0" | ||
15 | |||
16 | inherit fsl-eula-unpack cmake systemd use-imx-headers | ||
17 | |||
18 | PACKAGECONFIG = "" | ||
19 | # Note: building with tuningext fails with boost 1.87. | ||
20 | # (update to 1.87 with walnascar) | ||
21 | PACKAGECONFIG[tuningext] = "-DTUNINGEXT=1,-DTUNINGEXT=0" | ||
22 | |||
23 | # Build the sub-folder appshell | ||
24 | OECMAKE_SOURCEPATH = "${S}/appshell" | ||
25 | |||
26 | # Use make instead of ninja | ||
27 | OECMAKE_GENERATOR = "Unix Makefiles" | ||
28 | |||
29 | # Workaround for linking issues seen with gold linker | ||
30 | LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" | ||
31 | |||
32 | SYSTEMD_SERVICE:${PN} = "imx8-isp.service" | ||
33 | |||
34 | EXTRA_OECMAKE += " \ | ||
35 | -DSDKTARGETSYSROOT=${STAGING_DIR_HOST} \ | ||
36 | -DCMAKE_BUILD_TYPE=release \ | ||
37 | -DISP_VERSION=ISP8000NANO_V1802 \ | ||
38 | -DPLATFORM=ARM64 \ | ||
39 | -DTUNINGEXT=1 \ | ||
40 | -DQTLESS=1 \ | ||
41 | -DFULL_SRC_COMPILE=1 \ | ||
42 | -DWITH_DRM=1 \ | ||
43 | -DWITH_DWE=1 \ | ||
44 | -DSUBDEV_V4L2=1 \ | ||
45 | -DPARTITION_BUILD=0 \ | ||
46 | -D3A_SRC_BUILD=0 \ | ||
47 | -DIMX_G2D=ON \ | ||
48 | -Wno-dev \ | ||
49 | " | ||
50 | |||
51 | do_configure:prepend () { | ||
52 | # FIXME: should be rebuild. | ||
53 | patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/bin/isp_media_server | ||
54 | patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/lib/libmedia_server.so | ||
55 | patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/tuningext/install/tuningext | ||
56 | |||
57 | # FIXME: Should be rebuild. | ||
58 | patchelf --replace-needed libtinyxml2.so.10 libtinyxml2.so.11 ${S}/appshell/shell_libs/ispcore/ARM64/libcam_device.so | ||
59 | } | ||
60 | |||
61 | do_install() { | ||
62 | # FIXME: provided by the basler-camera package, do not install them here additionally | ||
63 | rm -f ${S}/dewarp/dewarp_config//daA3840_30mc*.json | ||
64 | |||
65 | # The Makefile unconditionally installs tuningext even if it is not built | ||
66 | if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then | ||
67 | touch ${B}/generated/release/bin/tuningext | ||
68 | fi | ||
69 | |||
70 | oe_runmake -f ${S}/Makefile install INSTALL_DIR=${D} SOURCE_DIR=${S} | ||
71 | |||
72 | if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then | ||
73 | rm ${D}/opt/imx8-isp/bin/tuningext | ||
74 | fi | ||
75 | |||
76 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then | ||
77 | install -d ${D}${systemd_system_unitdir} | ||
78 | install -m 0644 ${S}/imx/imx8-isp.service ${D}${systemd_system_unitdir} | ||
79 | fi | ||
80 | |||
81 | } | ||
82 | |||
83 | # The build contains a mix of versioned and unversioned libraries, so | ||
84 | # the default packaging configuration needs some modification so that | ||
85 | # unversioned .so libraries go to the main package and versioned .so | ||
86 | # symlinks go to -dev. | ||
87 | FILES_SOLIBSDEV = "" | ||
88 | FILES:${PN} += "/opt ${libdir}/lib*${SOLIBSDEV}" | ||
89 | FILES:${PN}-dev += "${FILES_SOLIBS_VERSIONED}" | ||
90 | FILES_SOLIBS_VERSIONED = " \ | ||
91 | ${libdir}/libcppnetlib-client-connections.so \ | ||
92 | ${libdir}/libcppnetlib-server-parsers.so \ | ||
93 | ${libdir}/libcppnetlib-uri.so \ | ||
94 | ${libdir}/libos08a20.so \ | ||
95 | " | ||
96 | |||
97 | RDEPENDS:${PN} = "libdrm" | ||
98 | |||
99 | COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)" | ||