kmscon: make bblit mandatory

Similar to the font backends we now require one backend to be always
available as safe fallback. The bblit backend is the most basic backend so
make it mandatory and link it unconditionally.

Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
This commit is contained in:
David Herrmann 2013-01-03 17:48:23 +01:00
parent b55f6e3284
commit 995c07f853
4 changed files with 5 additions and 67 deletions

View File

@ -473,6 +473,7 @@ kmscon_SOURCES = \
src/font_8x16.c \ src/font_8x16.c \
src/text.h \ src/text.h \
src/text.c \ src/text.c \
src/text_bblit.c \
src/kmscon_module_interface.h \ src/kmscon_module_interface.h \
src/kmscon_module.h \ src/kmscon_module.h \
src/kmscon_module.c \ src/kmscon_module.c \
@ -513,10 +514,6 @@ kmscon_CPPFLAGS += $(FUSE_CFLAGS)
kmscon_LDADD += $(FUSE_LIBS) kmscon_LDADD += $(FUSE_LIBS)
endif endif
if BUILD_ENABLE_RENDERER_BBLIT
kmscon_SOURCES += src/text_bblit.c
endif
# #
# Wayland Terminal # Wayland Terminal
# #

View File

@ -263,21 +263,17 @@ AC_MSG_CHECKING([which render backends the user wants])
AC_ARG_WITH([renderers], AC_ARG_WITH([renderers],
[AS_HELP_STRING([--with-renderers], [AS_HELP_STRING([--with-renderers],
[specify list of optional render backends])]) [specify list of optional render backends])])
enable_renderer_bblit="no"
enable_renderer_bbulk="no" enable_renderer_bbulk="no"
enable_renderer_gltex="no" enable_renderer_gltex="no"
if test "x$with_renderers" = "x" ; then if test "x$with_renderers" = "x" ; then
enable_renderer_bblit="yes (default)"
enable_renderer_bbulk="yes (default)" enable_renderer_bbulk="yes (default)"
enable_renderer_gltex="yes (default)" enable_renderer_gltex="yes (default)"
with_renderers="bblit,bbulk,gltex (default)" with_renderers="bbulk,gltex (default)"
else else
SAVEIFS="$IFS" SAVEIFS="$IFS"
IFS="," IFS=","
for i in $with_renderers ; do for i in $with_renderers ; do
if test "x$i" = "xbblit" ; then if test "x$i" = "xbbulk" ; then
enable_renderer_bblit="yes"
elif test "x$i" = "xbbulk" ; then
enable_renderer_bbulk="yes" enable_renderer_bbulk="yes"
elif test "x$i" = "xgltex" ; then elif test "x$i" = "xgltex" ; then
enable_renderer_gltex="yes" enable_renderer_gltex="yes"
@ -551,15 +547,6 @@ else
pciaccess_missing="enable-pciaccess" pciaccess_missing="enable-pciaccess"
fi fi
# renderer bblit
renderer_bblit_avail=no
renderer_bblit_missing=""
if test ! "x$enable_renderer_bblit" = "xno" ; then
renderer_bblit_avail=yes
else
renderer_bblit_missing="enable-renderer-bblit"
fi
# renderer bbulk # renderer bbulk
renderer_bbulk_avail=no renderer_bbulk_avail=no
renderer_bbulk_missing="" renderer_bbulk_missing=""
@ -838,14 +825,6 @@ if test "x$renderer_bbulk_avail" = "xyes" ; then
fi fi
fi fi
# renderer bblit
renderer_bblit_enabled=no
if test "x$renderer_bblit_avail" = "xyes" ; then
if test "x${enable_renderer_bblit% *}" = "xyes" ; then
renderer_bblit_enabled=yes
fi
fi
# pciaccess # pciaccess
pciaccess_enabled=no pciaccess_enabled=no
if test "x$pciaccess_avail" = "xyes" ; then if test "x$pciaccess_avail" = "xyes" ; then
@ -1034,15 +1013,6 @@ fi
AM_CONDITIONAL([BUILD_ENABLE_PCIACCESS], AM_CONDITIONAL([BUILD_ENABLE_PCIACCESS],
[test "x$pciaccess_enabled" = "xyes"]) [test "x$pciaccess_enabled" = "xyes"])
# renderer bblit
if test "x$renderer_bblit_enabled" = "xyes" ; then
AC_DEFINE([BUILD_ENABLE_RENDERER_BBLIT], [1],
[Build bblit rendering backend])
fi
AM_CONDITIONAL([BUILD_ENABLE_RENDERER_BBLIT],
[test "x$renderer_bblit_enabled" = "xyes"])
# renderer bbulk # renderer bbulk
if test "x$renderer_bbulk_enabled" = "xyes" ; then if test "x$renderer_bbulk_enabled" = "xyes" ; then
AC_DEFINE([BUILD_ENABLE_RENDERER_BBULK], [1], AC_DEFINE([BUILD_ENABLE_RENDERER_BBULK], [1],
@ -1229,7 +1199,6 @@ AC_MSG_NOTICE([Build configuration:
pango: $font_pango_enabled ($font_pango_avail: $font_pango_missing) pango: $font_pango_enabled ($font_pango_avail: $font_pango_missing)
Renderers: Renderers:
bblit: $renderer_bblit_enabled ($renderer_bblit_avail: $renderer_bblit_missing)
bbulk: $renderer_bbulk_enabled ($renderer_bbulk_avail: $renderer_bbulk_missing) bbulk: $renderer_bbulk_enabled ($renderer_bbulk_avail: $renderer_bbulk_missing)
gltex: $renderer_gltex_enabled ($renderer_gltex_avail: $renderer_gltex_missing) gltex: $renderer_gltex_enabled ($renderer_gltex_avail: $renderer_gltex_missing)

View File

@ -607,7 +607,7 @@ int main(int argc, char **argv)
kmscon_load_modules(); kmscon_load_modules();
kmscon_font_register(&kmscon_font_8x16_ops); kmscon_font_register(&kmscon_font_8x16_ops);
kmscon_text_load_all(); kmscon_text_register(&kmscon_text_bblit_ops);
memset(&app, 0, sizeof(app)); memset(&app, 0, sizeof(app));
app.conf_ctx = conf_ctx; app.conf_ctx = conf_ctx;
@ -647,7 +647,7 @@ int main(int argc, char **argv)
destroy_app(&app); destroy_app(&app);
err_unload: err_unload:
kmscon_text_unload_all(); kmscon_text_unregister(kmscon_text_bblit_ops.name);
kmscon_font_unregister(kmscon_font_8x16_ops.name); kmscon_font_unregister(kmscon_font_8x16_ops.name);
kmscon_unload_modules(); kmscon_unload_modules();
err_conf: err_conf:

View File

@ -114,32 +114,4 @@ extern struct kmscon_text_ops kmscon_text_bblit_ops;
extern struct kmscon_text_ops kmscon_text_bbulk_ops; extern struct kmscon_text_ops kmscon_text_bbulk_ops;
extern struct kmscon_text_ops kmscon_text_gltex_ops; extern struct kmscon_text_ops kmscon_text_gltex_ops;
#ifdef BUILD_ENABLE_RENDERER_BBLIT
int kmscon_text_bblit_load(void);
void kmscon_text_bblit_unload(void);
#else
static inline int kmscon_text_bblit_load(void)
{
return -EOPNOTSUPP;
}
static inline void kmscon_text_bblit_unload(void)
{
}
#endif
static inline void kmscon_text_load_all(void)
{
kmscon_text_bblit_load();
}
static inline void kmscon_text_unload_all(void)
{
kmscon_text_bblit_unload();
}
#endif /* KMSCON_TEXT_H */ #endif /* KMSCON_TEXT_H */