Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pkg/lv_drivers: initial commit #17713

Merged
merged 4 commits into from
Feb 28, 2022
Merged

Conversation

fjmolinas
Copy link
Contributor

@fjmolinas fjmolinas commented Feb 28, 2022

Contribution description

Supersedes #16944 which is based on v7, this PR is therefore based on #17681.

Testing procedure

TEST_KCONFIG=1 BOARD=native make -C tests/pkg_lvgl/ clean flash term -j
TEST_KCONFIG=0 BOARD=native make -C tests/pkg_lvgl/ clean flash term -j
TEST_KCONFIG=1 BOARD=native make -C tests/pkg_lvgl_touch/ clean flash term -j
TEST_KCONFIG=0 BOARD=native make -C tests/pkg_lvgl_touch/ clean flash term -j

Issues/PRs references

Closes #16944

@fjmolinas fjmolinas added the State: waiting for other PR State: The PR requires another PR to be merged first label Feb 28, 2022
@github-actions github-actions bot added Area: boards Area: Board ports Area: doc Area: Documentation Area: Kconfig Area: Kconfig integration Area: pkg Area: External package ports Area: sys Area: System Area: tests Area: tests and testing framework Area: tools Area: Supplementary tools Platform: native Platform: This PR/issue effects the native platform labels Feb 28, 2022
@fjmolinas fjmolinas added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR and removed State: waiting for other PR State: The PR requires another PR to be merged first CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Feb 28, 2022
@fjmolinas fjmolinas added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Feb 28, 2022
@github-actions github-actions bot removed the Area: tools Area: Supplementary tools label Feb 28, 2022
pkg/lvgl/doc.txt Outdated Show resolved Hide resolved
Copy link
Contributor

@kaspar030 kaspar030 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK.

@kaspar030
Copy link
Contributor

please squash!

pkg/lv_drivers/doc.txt Outdated Show resolved Hide resolved
@fjmolinas fjmolinas removed the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Feb 28, 2022
@fjmolinas fjmolinas added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Feb 28, 2022
@fjmolinas
Copy link
Contributor Author

Unrelated CI failure, should I re-trigger asap or re-run afterward skipping ic build https://ci.riot-os.org/RIOT-OS/RIOT/17713/6bb9656344481e48ca867fdedf1556c8d71c9676/output/compile/tests/driver_tps6274x/esp8266-esp-12x:gnu.txt? @kaspar030

@kaspar030 kaspar030 added CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR and removed CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Feb 28, 2022
@kaspar030
Copy link
Contributor

Unrelated CI failure, should I re-trigger asap or re-run afterward skipping ic build https://ci.riot-os.org/RIOT-OS/RIOT/17713/6bb9656344481e48ca867fdedf1556c8d71c9676/output/compile/tests/driver_tps6274x/esp8266-esp-12x:gnu.txt? @kaspar030

I re-triggered with "skip compile tests". there was only the one unrelated build failure.

@kaspar030 kaspar030 merged commit e362586 into RIOT-OS:master Feb 28, 2022
@fjmolinas fjmolinas deleted the pr_lv_drivers_v8 branch February 28, 2022 12:32
@chrysn
Copy link
Member

chrysn commented Mar 2, 2022

Just saw this when pulling in master, where it first gave me an error on #include </SDL.h> (granted, I didn't have libsdl2-dev installed) and now gives me:

$ make all term BOARD=native -C tests/pkg_lvgl
make: Entering directory '/home/chrysn/git/RIOT/tests/pkg_lvgl'
Building application "tests_pkg_lvgl" for "native" with MCU "native".

"make" -C /home/chrysn/git/RIOT/pkg/lv_drivers/ 
"make" -C /home/chrysn/git/RIOT/build/pkg/lv_drivers/sdl -f /home/chrysn/git/RIOT/pkg/lv_drivers/Makefile.lv_drivers_module MODULE=lv_drivers_sdl SRC=sdl.c
In file included from /usr/include/SDL2/SDL_stdinc.h:31,
                 from /usr/include/SDL2/SDL_main.h:25,
                 from /usr/include/SDL2/SDL.h:32,
                 from /home/chrysn/git/RIOT/build/pkg/lv_drivers/sdl/sdl.c:53:
/usr/include/SDL2/SDL_config.h:4:10: fatal error: SDL2/_real_SDL_config.h: No such file or directory
    4 | #include <SDL2/_real_SDL_config.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [/home/chrysn/git/RIOT/Makefile.base:146: /home/chrysn/git/RIOT/tests/pkg_lvgl/bin/native/lv_drivers_sdl/sdl.o] Error 1
make[1]: *** [Makefile:18: lv_drivers_sdl] Error 2
make: *** [/home/chrysn/git/RIOT/tests/pkg_lvgl/../../Makefile.include:799: pkg-build] Error 2
make: Leaving directory '/home/chrysn/git/RIOT/tests/pkg_lvgl'

which appears to be due to mine sitting in /usr/include/x86_64-linux-gnu/SDL2/_real_SDL_config.h (from libsdl2-dev) ... and libsdl2-dev:i386 on Debian appears to conflict with, like, the rest of my system.

Is there anything that could be added to make this journey smoother? Checking for the existence of sdl2-config might be a good start. On which distributions was this tested?

@fjmolinas
Copy link
Contributor Author

Is there anything that could be added to make this journey smoother? Checking for the existence of sdl2-config might be a good start. On which distributions was this tested?

ubuntu-21.10 and ubuntu 20.10 on my side.

@chrysn
Copy link
Member

chrysn commented Mar 2, 2022

Aaah, took me a major while to track: I merely couldn't install libsdl2-dev:i386 due to an unrelated package that could not be updated. Now that I've installed it, all peachy.

What this would need in terms of checks is to see whether the library sdl2-config is referring to is actually i386 -- alas, I haven't found a way to do that portably. For now, I'm leaving here (and for discovery) that if you get errors like

In file included from <command-line>:
.../RIOT/tests/pkg_lvgl/bin/native/riotbuild/riotbuild.h:13:26: fatal error: /SDL.h: No such file or directory
   13 | #define SDL_INCLUDE_PATH </SDL.h>
      |                          ^
compilation terminated.

you'll need to install libsdl2-dev:i386 on Debian-based systems, and if you get

/usr/include/SDL2/SDL_config.h:4:10: fatal error: SDL2/_real_SDL_config.h: No such file or directory
    4 | #include <SDL2/_real_SDL_config.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

you do have libsdl2-dev installed but it's the 64-bit version that native can't use.

@OlegHahm OlegHahm added this to the Release 2022.04 milestone Apr 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: boards Area: Board ports Area: doc Area: Documentation Area: Kconfig Area: Kconfig integration Area: pkg Area: External package ports Area: sys Area: System Area: tests Area: tests and testing framework CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs Platform: native Platform: This PR/issue effects the native platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants