Since late last year, I've been going through the Xorg projects on gitlab and making sure they have a basic CI setup for incoming merge requests. Mostly they run "gmake distcheck" (or the equivalent), some basic checks on the commit message & merge request, and the static analysis provided by gitlab (which varies by source code language). I think I've finished this now for all the repositories that it should be done for (and probably some that didn't really need it).
By my count, there are currently 265 non-archived gitlab projects in the Xorg namespace (not counting the "meta" project which has no git repo) - a list is at https://gitlab.freedesktop.org/-/snippets/6834 . These projects do not have gitlab CI set up yet: app/constype - requires either SPARC or Solaris/x86 to build app/fdclock - appears abandoned, no commits since 2007 app/mdm - appears abandoned, no commits since 2008 app/quartz-wm - requires MacOS to build app/xresponse - appears abandoned, no commits since 2007 app/xshowdamage - appears abandoned, no commits since 2006 driver/xf86-input-vmmouse - merge request !1 submitted driver/xf86-video-armsoc - appears abandoned, no commits since 2016 driver/xf86-video-freedreno - appears abandoned, no commits since 2017 driver/xf86-video-geode - build requires 32-bit, our CI is 64-bit - see !2 driver/xf86-video-glint - doesn't build due to the removal of ramdac - see !1 driver/xf86-video-impact - doesn't build due to the removal of XAA - see !2 driver/xf86-video-intel - I believe Intel runs their own CI outside gitlab driver/xf86-video-newport - doesn't build due to the removal of XAA - see !1 driver/xf86-video-opentegra - doesn't build due to multiple API breaks - see #1 driver/xf86-video-s3 - doesn't build due to the removal of ramdac - see !1 driver/xf86-video-tga - doesn't build due to the removal of ramdac - see !1 driver/xf86-video-vmware - merge request !2 submitted driver/xf86-video-wsfb - requires headers available only on NetBSD & OpenBSD to build - see !1 lib/libAppleWM - requires MacOS to build - see !1 lib/libXrandrUtils - appears abandoned, no commits since 2012 util/install-check - appears abandoned, no commits since 2007 util/modular - does not have build process to run in CI (See https://lists.freedesktop.org/archives/xorg-devel/2022-January/058800.html for more info on the driver subset.) Of those with CI setup, these do not include the Security/SAST.gitlab-ci.yml template to enable static analysis: data/* & most of font/* - data & font files, not source code, thus nothing to analyze driver/xf86-video-amdgpu - submitted in !78 lib/libxcvt - I'm not quite sure how to add it here given the unusual CI template setup for this repo xserver - submitted in !947 Unfortunately, without the expensive version of gitlab, the CI results are just provided as "gl-sast-report.json" files to download & parse, not in a human-friendly format, but they are at least available to those who want to take a look. Partway through this effort, a discussion on #xorg-devel IRC led me to stop including the check for Signed-off-by: tags in the commits, but I've not gone back to remove it from all the ones I'd done by that point - it's still in 163 of the .gitlab-ci.yml files, but it's easy to remove when needed: https://gitlab.freedesktop.org/xorg/driver/xf86-video-nv/-/commit/adbd442a21ab67 As long as I'm running stats against all these repos, some more interesting numbers for our 265 projects: - 255 have a configure.ac file to build with GNU autotools - 13 have a meson.build file to build with meson (5 are meson only, 8 have both meson & autotools support) - 3 just have Makefiles (mdm, install-check, xshowdamage) - 2 have no build method (util/modular & xcb-util-m4) Hopefully having CI setup will help make meson conversions easier. (For those doing such conversions, see the xproto or libXvMC .gitlab-ci.yml for examples on running both builds during the transition period.) -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle Solaris Engineering - https://blogs.oracle.com/solaris