blob: 3a2ac236c0312bd751c543fbaa780711b44c28c6 [file] [log] [blame]
Andrew Geissler87f5cff2022-09-30 13:13:31 -05001From: Vincent Davis Jr <vince@underview.tech>
2Date: Fri, 07 Jan 2022 07:10:47 PM CST
3Subject: [PATCH] Use packageconfig to acquire mmal flags
4
5Need to use userland graphics libraries package files as it's best to not assume /opt/vc is where
6all libs and headers are installed per distro. Also, needed to include $BCMHOST_MMAL_LIBS variable as
7AC_CHECK_LIB(bcm_host) fails to find `vc_tv_unregister_callback_full`. Adding $BCMHOST_MMAL_LIBS uses all
8libs inside bcm_host,mmal,vcsm,openmaxil .pc files when checking for `vc_tv_unregister_callback_full`
9function.
10
11Upstream-status: Pending
12
13Signed-off-by: Vincent Davis Jr <vince@underview.tech>
14diff --git a/configure.ac b/configure.ac
15index bff220510..4d487409d 100644
16--- a/configure.ac
17+++ b/configure.ac
18@@ -3483,23 +3483,25 @@ AC_ARG_ENABLE(mmal_avcodec,
19 [Use MMAL enabled avcodec libs (default disable)]))
20 if test "${enable_mmal}" != "no"; then
21 VLC_SAVE_FLAGS
22- LDFLAGS="${LDFLAGS} -L/opt/vc/lib -lvchostif"
23- CPPFLAGS="${CPPFLAGS} -isystem /opt/vc/include -isystem /opt/vc/include/interface/vcos/pthreads -isystem /opt/vc/include/interface/vmcs_host/linux"
24- AC_CHECK_HEADERS(interface/mmal/mmal.h,
25- [ AC_CHECK_LIB(bcm_host, vc_tv_unregister_callback_full, [
26+ PKG_CHECK_MODULES(BCMHOST_MMAL, [bcm_host mmal vcsm openmaxil egl], [
27+ HAVE_MMAL=yes
28+ AC_CHECK_HEADERS(interface/mmal/mmal.h,
29+ [ AC_CHECK_LIB(bcm_host $BCMHOST_MMAL_LIBS, vc_tv_unregister_callback_full, [
30 have_mmal="yes"
31- VLC_ADD_PLUGIN([mmal])
32- VLC_ADD_LDFLAGS([mmal],[ -L/opt/vc/lib ])
33- VLC_ADD_CFLAGS([mmal],[ -isystem /opt/vc/include -isystem /opt/vc/include/interface/vcos/pthreads -isystem /opt/vc/include/interface/vmcs_host/linux ])
34- VLC_ADD_LIBS([mmal],[ -lbcm_host -lmmal -lmmal_core -lmmal_components -lmmal_util -lvchostif -lvchiq_arm -lvcsm ]) ], [
35+ VLC_ADD_PLUGIN([bcm_host mmal vcsm openmaxil egl])
36+ VLC_ADD_CFLAGS([bcm_host mmal vcsm openmaxil egl],[$BCMHOST_MMAL_CFLAGS])
37+ VLC_ADD_LIBS([bcm_host mmal vcsm openmaxil egl],[$BCMHOST_MMAL_LIBS]) ], [
38 AS_IF([test "${enable_mmal}" = "yes"],
39 [ AC_MSG_ERROR([Cannot find bcm library...]) ],
40 [ AC_MSG_WARN([Cannot find bcm library...]) ])
41- ],
42- [])
43- ] , [ AS_IF([test "${enable_mmal}" = "yes"],
44- [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ],
45- [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ])
46+ ],[])
47+ ],[ AS_IF([test "${enable_mmal}" = "yes"],
48+ [ AC_MSG_ERROR([Cannot find development headers for mmal...]) ],
49+ [ AC_MSG_WARN([Cannot find development headers for mmal...]) ]) ])
50+ ],:[
51+ AC_MSG_WARN([${BCMHOST_PKG_ERRORS}: userland graphics not available.])
52+ HAVE_MMAL=no
53+ ])
54 VLC_RESTORE_FLAGS
55 fi
56 AM_CONDITIONAL([HAVE_MMAL], [test "${have_mmal}" = "yes"])