diff options
author | Vito Caputo <vcaputo@pengaru.com> | 2022-03-29 01:52:01 -0700 |
---|---|---|
committer | Vito Caputo <vcaputo@pengaru.com> | 2022-03-29 01:52:01 -0700 |
commit | 69077169545427acb2e8a3f1a487e6c144ed6f20 (patch) | |
tree | f2c1550516ab657adc5b93c5ce871d597b22dfc6 /src | |
parent | 6ad1fe1ad5400f25686e39b119615941377e0c71 (diff) |
build: make sdl2 and rototiller bin optional
Now that there's a decoupled libtil usable by alternative
frontends by vendoring rototiller, the build should support
fb-less rototiller-less configurations.
In lieu of this change glimmer's build requires sdl2 despite not
actually utilizing sdl_fb. Now that shouldn't be necessary,
should there be neither libdrm or sdl2 present we'll only produce
libtil and no rototiller binary at all.
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 7 | ||||
-rw-r--r-- | src/main.c | 10 |
2 files changed, 15 insertions, 2 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 6ca1d77..aa42c08 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -5,9 +5,14 @@ libtil_la_SOURCES = til_args.c til_args.h til_fb.c til_fb.h til_knobs.h til.c ti libtil_la_CPPFLAGS = -I@top_srcdir@/src libtil_la_LIBADD = modules/compose/libcompose.la modules/drizzle/libdrizzle.la modules/flui2d/libflui2d.la modules/julia/libjulia.la modules/meta2d/libmeta2d.la modules/montage/libmontage.la modules/pixbounce/libpixbounce.la modules/plasma/libplasma.la modules/plato/libplato.la modules/ray/libray.la modules/roto/libroto.la modules/rtv/librtv.la modules/snow/libsnow.la modules/sparkler/libsparkler.la modules/spiro/libspiro.la modules/stars/libstars.la modules/submit/libsubmit.la modules/swab/libswab.la modules/swarm/libswarm.la libs/grid/libgrid.la libs/puddle/libpuddle.la libs/ray/libray.la libs/sig/libsig.la libs/txt/libtxt.la libs/ascii/libascii.la libs/din/libdin.la +if ENABLE_ROTOTILLER bin_PROGRAMS = rototiller -rototiller_SOURCES = fps.c fps.h main.c sdl_fb.c setup.h setup.c til.h til_fb.c til_fb.h til_knobs.h til_settings.c til_settings.h til_threads.c til_threads.h til_util.c til_util.h +rototiller_SOURCES = fps.c fps.h main.c setup.h setup.c til.h til_fb.c til_fb.h til_knobs.h til_settings.c til_settings.h til_threads.c til_threads.h til_util.c til_util.h +if ENABLE_SDL +rototiller_SOURCES += sdl_fb.c +endif if ENABLE_DRM rototiller_SOURCES += drm_fb.c endif rototiller_LDADD = libtil.la -lm +endif @@ -27,7 +27,11 @@ * another page so we can begin rendering another frame before vsync. With * just two pages we end up twiddling thumbs until the vsync arrives. */ +#ifdef HAVE_SDL #define DEFAULT_VIDEO "sdl" +#else +#define DEFAULT_VIDEO "drm" +#endif extern til_fb_ops_t drm_fb_ops; extern til_fb_ops_t sdl_fb_ops; @@ -68,7 +72,9 @@ static int setup_video(til_settings_t *settings, til_setting_t **res_setting, co #ifdef HAVE_DRM "drm", #endif +#ifdef HAVE_SDL "sdl", +#endif NULL, }; int r; @@ -96,13 +102,15 @@ static int setup_video(til_settings_t *settings, til_setting_t **res_setting, co fb_ops = &drm_fb_ops; return drm_fb_ops.setup(settings, res_setting, res_desc); - } else + } #endif +#ifdef HAVE_SDL if (!strcmp(video, "sdl")) { fb_ops = &sdl_fb_ops; return sdl_fb_ops.setup(settings, res_setting, res_desc); } +#endif return -EINVAL; } |