summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2015-06-02 15:37:26 +0100
committerRussell King <rmk@arm.linux.org.uk>2015-06-02 16:28:55 +0100
commit16be441c88b30d8bbe76fb494abfd06c39eb03ec (patch)
treee143448d96f92b5a9c794fc8d55f1c2aebaca97e
parent233ae3f2becb55e26b7d7bdae7b659a004618094 (diff)
downloadxf86-video-armada-16be441c88b30d8bbe76fb494abfd06c39eb03ec.tar.gz
xf86-video-armada-16be441c88b30d8bbe76fb494abfd06c39eb03ec.tar.xz
configure: split the enable options for Etnaviv and Etnaviv/DRM
Provide separate configure options to permit enabling the Etnaviv (libetnaviv-based) GPU driver and the Etnaviv DRM driver separately from each other. This allows us to build the driver with support for only one backend, if so desired. Signed-off-by: Russell King <rmk@arm.linux.org.uk>
-rw-r--r--Makefile.am3
-rw-r--r--configure.ac23
-rw-r--r--etnaviv/Makefile.am44
3 files changed, 43 insertions, 27 deletions
diff --git a/Makefile.am b/Makefile.am
index 9aabdf3..9dd1d81 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -24,6 +24,9 @@ SUBDIRS = common man src
if HAVE_ACCEL_ETNAVIV
SUBDIRS += etnaviv
endif
+if HAVE_ACCEL_ETNADRM
+SUBDIRS += etnaviv
+endif
if HAVE_ACCEL_GALCORE
SUBDIRS += vivante
endif
diff --git a/configure.ac b/configure.ac
index d24f36c..e5cfc5d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -120,6 +120,12 @@ AC_MSG_RESULT([$ACCEL_GALCORE])
# Etnaviv GPU acceleration
+AC_ARG_ENABLE(etnadrm,
+ AC_HELP_STRING([--disable-etnadrm],
+ [Disable Etnaviv DRM acceleration support [[default=enabled]]]),
+ [ACCEL_ETNADRM="$enableval"],
+ [ACCEL_ETNADRM=auto])
+
AC_ARG_ENABLE(etnaviv,
AC_HELP_STRING([--disable-etnaviv],
[Disable Etnaviv acceleration support [[default=enable]]]),
@@ -141,7 +147,7 @@ AC_ARG_WITH(etnaviv-lib,
[specify directory for installed etnaviv library [[default=unset]]]),
[etnaviv_lib="$withval"])
-AS_IF([test x$ACCEL_ETNAVIV != xno],
+AS_IF([test x$ACCEL_ETNAVIV != xno || test x$ACCEL_ETNADRM != xno],
[
AS_IF([test x$etnaviv_source != x],
[
@@ -163,8 +169,9 @@ AS_IF([test x$ACCEL_ETNAVIV != xno],
LDFLAGS="$LDFLAGS $ETNAVIV_LIBS"
CFLAGS="$CFLAGS $ETNAVIV_CFLAGS"
AC_CHECK_LIB([etnaviv], [viv_open],
- [ACCEL_ETNAVIV=yes],
- [ACCEL_ETNAVIV=no])
+ [AS_IF([test x$ACCEL_ETNAVIV = xauto], [ACCEL_ETNAVIV=yes])
+ AS_IF([test x$ACCEL_ETNADRM = xauto], [ACCEL_ETNADRM=yes])],
+ [ACCEL_ETNAVIV=no ACCEL_ETNADRM=no])
AC_CHECK_LIB([etnaviv], [etna_bo_from_dmabuf],
[DUMMY=y],
[AC_MSG_ERROR([etnaviv support requires etna_bo_from_dmabuf()])])
@@ -174,14 +181,20 @@ AS_IF([test x$ACCEL_ETNAVIV != xno],
LDFLAGS="$saved_LDFLAGS"
CFLAGS="$saved_CFLAGS"
AS_IF([test x$PKGCFG_ETNAVIV != xyes], [ETNAVIV_LIBS+=" -letnaviv"])
- AS_IF([test x$ACCEL_ETNAVIV = xyes], [DRIVERS="etnaviv_gpu $DRIVERS"])
])
AC_MSG_CHECKING([whether to build Etnaviv acceleration support])
AS_IF([test x$ACCEL_ETNAVIV = xyes],
- [AC_DEFINE(HAVE_ACCEL_ETNAVIV,1,[Enable Etnaviv acceleration support])])
+ [AC_DEFINE(HAVE_ACCEL_ETNAVIV,1,[Enable Etnaviv acceleration support])
+ DRIVERS="etnaviv_gpu $DRIVERS"])
AM_CONDITIONAL(HAVE_ACCEL_ETNAVIV, test x$ACCEL_ETNAVIV = xyes)
AC_MSG_RESULT([$ACCEL_ETNAVIV])
+AC_MSG_CHECKING([whether to build Etnaviv DRM acceleration support])
+AS_IF([test x$ACCEL_ETNADRM = xyes],
+ [AC_DEFINE(HAVE_ACCEL_ETNADRM,1,[Enable Etnaviv DRM acceleration support])
+ DRIVERS="etnadrm_gpu $DRIVERS"])
+AM_CONDITIONAL(HAVE_ACCEL_ETNADRM, test x$ACCEL_ETNADRM = xyes)
+AC_MSG_RESULT([$ACCEL_ETNADRM])
AC_ARG_ENABLE(dri2, AC_HELP_STRING([--disable-dri2],
[Disable DRI support [[default=auto]]]),
diff --git a/etnaviv/Makefile.am b/etnaviv/Makefile.am
index 0f6ff6d..affbffb 100644
--- a/etnaviv/Makefile.am
+++ b/etnaviv/Makefile.am
@@ -18,43 +18,43 @@ AM_CFLAGS = $(filter-out -Wnested-externs -Wcast-qual -Wredundant-decls \
$(XORG_CFLAGS) $(ETNAVIV_CFLAGS) $(DRMARMADA_CFLAGS) $(UDEV_CFLAGS) \
-I$(top_srcdir)/src -I$(top_srcdir)/common
-etnaviv_gpu_la_LTLIBRARIES = etnaviv_gpu.la
-etnaviv_gpu_la_LDFLAGS = -module -avoid-version
-etnaviv_gpu_la_LIBADD = \
- $(ETNAVIV_LIBS) \
- $(DRMARMADA_LIBS) \
- $(top_builddir)/common/libcommon.la
-etnaviv_gpu_ladir = @moduledir@/drivers
-etnaviv_gpu_la_SOURCES = \
+ETNA_COMMON_SOURCES = \
etnaviv.c \
etnaviv_accel.c \
- etnaviv_emit.c \
- etnaviv_module.c \
etnaviv_op.c \
etnaviv_utils.c \
etnaviv_xv.c
+ETNA_COMMON_LIBADD = \
+ $(DRMARMADA_LIBS) \
+ $(top_builddir)/common/libcommon.la
if HAVE_DRI2
-etnaviv_gpu_la_SOURCES += etnaviv_dri2.c
-etnaviv_gpu_la_LIBADD += $(DRI_LIBS)
+ETNA_COMMON_SOURCES += etnaviv_dri2.c
+ETNA_COMMON_LIBADD += $(DRI_LIBS)
endif
+if HAVE_ACCEL_ETNAVIV
+etnaviv_gpu_la_LTLIBRARIES = etnaviv_gpu.la
+etnaviv_gpu_la_LDFLAGS = -module -avoid-version
+etnaviv_gpu_la_LIBADD = \
+ $(ETNAVIV_LIBS) \
+ $(ETNA_COMMON_LIBADD)
+etnaviv_gpu_ladir = @moduledir@/drivers
+etnaviv_gpu_la_SOURCES = \
+ $(ETNA_COMMON_SOURCES) \
+ etnaviv_emit.c \
+ etnaviv_module.c
+endif
+
+if HAVE_ACCEL_ETNADRM
etnadrm_gpu_la_LTLIBRARIES = etnadrm_gpu.la
etnadrm_gpu_la_LDFLAGS = -module -avoid-version
etnadrm_gpu_la_LIBADD = \
- $(DRMARMADA_LIBS) \
- $(top_builddir)/common/libcommon.la
+ $(ETNA_COMMON_LIBADD)
etnadrm_gpu_ladir = @moduledir@/drivers
etnadrm_gpu_la_SOURCES = \
- etnaviv.c \
- etnaviv_accel.c \
+ $(ETNA_COMMON_SOURCES) \
etnadrm_emit.c \
etnadrm_module.c \
- etnaviv_op.c \
- etnaviv_utils.c \
- etnaviv_xv.c \
etnadrm.c
-if HAVE_DRI2
-etnadrm_gpu_la_SOURCES += etnaviv_dri2.c
-etnadrm_gpu_la_LIBADD += $(DRI_LIBS)
endif