[Buildroot] [PATCH v3] package/psplash: add support for missing configure options
Arnout Vandecappelle
arnout at mind.be
Sat Dec 11 09:55:23 UTC 2021
On 11/12/2021 10:51, Arnout Vandecappelle wrote:
>
>
> On 16/11/2021 11:45, Kory Maincent wrote:
>> Add support to three configure options:
>> --enable-startup-msg: Enable text banner output on startup
>> --enable-progress-bar: Enable progress bar
>> --enable-img-fullscreen: Enable the logo image in fullscreen mode
I forgot to mention before: the commit message should say explicitly that
startup-msg and progress-bar default to enabled, so they have the corresponding
default in Config.in.
Regards,
Arnout
>>
>> Signed-off-by: Kory Maincent <kory.maincent at bootlin.com>
>> ---
>>
>> Change since v1:
>> Remove the crap .config.in.swp
>>
>> Change since v2:
>> Use both side of enable/disable configure option condition.
>> Use positive options in Kconfig.
>>
>>
>> package/psplash/Config.in | 17 +++++++++++++++++
>> package/psplash/psplash.mk | 18 ++++++++++++++++++
>> 2 files changed, 35 insertions(+)
>>
>> diff --git a/package/psplash/Config.in b/package/psplash/Config.in
>> index da99b264e0..edd30dcb4d 100644
>> --- a/package/psplash/Config.in
>> +++ b/package/psplash/Config.in
>> @@ -35,6 +35,23 @@ config BR2_PACKAGE_PSPLASH_IMAGE
>> Use a personalized png image as boot splash.
>> Let it empty if you want to keep the psplash default image.
>> +config BR2_PACKAGE_PSPLASH_FULL_SCREEN
>> + bool "use fullscreen mode"
>> + help
>> + Enable the psplash image in fullscreen mode.
>> +
>> +config BR2_PACKAGE_PSPLASH_STARTUP_MSG
>> + bool "enable startup message"
>> + default y
>> + help
>> + Enable text banner output on startup.
>> +
>> +config BR2_PACKAGE_PSPLASH_PROGRESS_BAR
>> + bool "enable progress bar"
>> + default y
>> + help
>> + Enable the management of the progress bar.
>> +
>> endif
>> comment "psplash needs a toolchain w/ wchar"
>> diff --git a/package/psplash/psplash.mk b/package/psplash/psplash.mk
>> index 5e61f2392f..e5b212381a 100644
>> --- a/package/psplash/psplash.mk
>> +++ b/package/psplash/psplash.mk
>> @@ -18,6 +18,24 @@ else
>> PSPLASH_CONF_OPTS += --without-systemd
>> endif
>> +ifeq ($(BR2_PACKAGE_PSPLASH_FULL_SCREEN),y)
>> +PSPLASH_CONF_OPTS += --enable-img-fullscreen
>> +else
>> +PSPLASH_CONF_OPTS += --disable-img-fullscreen
>
> Have you actually tested this?
>
> I haven't, but I see this in configure.ac:
>
> AC_ARG_ENABLE([img-fullscreen],
> AS_HELP_STRING([--enable-img-fullscreen], [Enable the logo image in
> fullscreen mode)]),
> [img_fullscreen=true],
> [img_fullscreen=false])
> AS_IF([test x$img_fullscreen = xtrue], [
> EXTRA_GCC_FLAGS="$EXTRA_GCC_FLAGS -DPSPLASH_IMG_FULLSCREEN=1"
> ])
>
> i.a. AC_ARG_ENABLE is used incorrectly. That means that both
> --enable-img-fullscreen and --disable-image-fullscreen will enable the option
> (because the action-if-present is img_fullscreen=true), while if nothing is
> set it will be disbled.
>
> Same for the other two options, but there the logic is inverted (i.e. it's
> disabled if present and enabled if not).
>
> I don't know if psplash is still an active project; if so, I would propose to
> fix this in configure.ac and send the patch upstream. The fix is simple:
>
>
> AC_ARG_ENABLE([img-fullscreen],
> AS_HELP_STRING([--enable-img-fullscreen], [Enable the logo image in
> fullscreen mode)]))
> AS_IF([test "x$enable_img_fullscreen" != "xno"], [
> EXTRA_GCC_FLAGS="$EXTRA_GCC_FLAGS -DPSPLASH_IMG_FULLSCREEN=1"
> ])
>
>
> and for enable-startup-msg:
>
> AC_ARG_ENABLE([startup-msg],
> AS_HELP_STRING([--disable-startup-msg], [Disable text banner output on
> startup]),
> [],[enable_startup_msg=yes])
> AS_IF([test "x$enable_startup_msg" = "xno"], [
> EXTRA_GCC_FLAGS="$EXTRA_GCC_FLAGS -DPSPLASH_DISABLE_STARTUP_MSG"
> ])
>
> (note: you have to use "no" because that is the value that is set when
> --disable-foo is given. You shouldn't use anything else because
> --enable-foo=no or --enable-foo=yes are also allowed).
>
>
> Regards,
> Arnout
>
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_PSPLASH_STARTUP_MSG),y)
>> +PSPLASH_CONF_OPTS += --enable-startup-msg
>> +else
>> +PSPLASH_CONF_OPTS += --disable-startup-msg
>> +endif
>> +
>> +ifeq ($(BR2_PACKAGE_PSPLASH_PROGRESS_BAR),y)
>> +PSPLASH_CONF_OPTS += --enable-progress-bar
>> +else
>> +PSPLASH_CONF_OPTS += --disable-progress-bar
>> +endif
>> +
>> PSPLASH_IMAGE = $(call qstrip,$(BR2_PACKAGE_PSPLASH_IMAGE))
>> ifneq ($(PSPLASH_IMAGE),)
>>
More information about the buildroot
mailing list