g2k22 - OpenBSD hackathon Burg Liebenzell

Since I have been living near Stuttgart for over a year I decided to travel to g2k22 by bike.

The days before g2k22 I was a little unmotivated because I didn’t know what to work on. My yearly huge KDE Gear update to 22.08 was already committed. Even CMake 2.24.1 has already made it in.

When I arrived at the castle, I met sdk@ first. I asked him if he could build the Qt6 for me and at the and of the first day I got an OK from him and we have almost Qt6 imported in OpenBSD now. Of course without x11/qt6/qtwebengine I’ll hack on it if we see consumers otherwise wasting several hours of work makes no sense.

Next “big” thing on my list was cmake.port.mk. I thought we could certainly improve that. I end up with 3 changes:

  • Use cmake(1) and ctest(1) instead of ninja(1)

    cmake(1) controls the build and install task/jobs. This is the way CMake prefers and it works very well for us. Full bulk build passed! Victims already fixed.

  • Remove USE_NINJA from consumers Is no longer necessary but still optional (requested by sthen@). This diff removes all usage. Expect www/h2o (see at ports@) This is possible because of the use of cmake(1).

  • Improve Verbose mode

Before:

===>  Regression tests for cmark-0.30.2p0
Test project /usr/ports/pobj/cmark-0.30.2/build-amd64
    Start 1: api_test
1/9 Test #1: api_test .........................   Passed    0.01 sec
    Start 2: html_normalization
2/9 Test #2: html_normalization ...............   Passed    0.16 sec
    Start 3: spectest_library

With the new option MODCMAKE_VERBOSE (default to yes):

===>  Regression tests for cmark-0.30.2p0
UpdateCTestConfiguration  from :/usr/ports/pobj/cmark-0.30.2/build-amd64/DartConfiguration.tcl                                                                                                                             21:09:28 [17/151]
Test project /usr/ports/pobj/cmark-0.30.2/build-amd64
Constructing a list of tests
Done constructing a list of tests
Updating test list for fixtures
Added 0 tests to meet fixture requirements
Checking test dependency graph...
Checking test dependency graph end
test 1
    Start 1: api_test

1: Test command: /usr/ports/pobj/cmark-0.30.2/build-amd64/api_test/api_test
1: Working Directory: /usr/ports/pobj/cmark-0.30.2/build-amd64/testdir
1: Test timeout computed to be: 10000000
1: 539 tests passed, 0 failed, 0 skipped
1: PASS
1/9 Test #1: api_test .........................   Passed    0.01 sec
test 2
    Start 2: html_normalization

2: Test command: /usr/local/bin/python3.9 "-m" "doctest" "/usr/ports/pobj/cmark-0.30.2/cmark-0.30.2/test/normalize.py"
2: Working Directory: /usr/ports/pobj/cmark-0.30.2/build-amd64/testdir
2: Test timeout computed to be: 10000000
2/9 Test #2: html_normalization ...............   Passed    0.16 sec

That was easier than I thought and tb@ was kind enough to start an bulk build for me. Expect from 2-3 broken ports not much had been broken. I was able to fix the two victims quickly. I’m starting to be really happy with our CMake port and module.

Apart from that, here’s a short list of what I’ve been working on.

  • devel/boost 1.80
  • cad/qcad
    • qcad to 3.27.6.7
  • gpgme to 1.18.0
  • Remove mlt6 and webvfx
  • Update quazip to 1.3
  • chessx to 1.5.6
  • krita to 5.1.0
  • doxygen to 1.9.5
  • cmark to 0.30.2
  • textproc/codespell
  • misc/open62541
  • meta/qt5
  • fonts/font-awesome
  • devel/jenkins/devel
  • sysutils/krename
  • www/h2o
  • meta/qt6
  • multimedia/assimp
  • net/neochat
  • devel/cmocka

All in all I can look back on a really successful hackathon. Since I mainly operate only in ports, it was nice to meet people from the kernel space. On Monday morning I left the castle in the direction of Nürnberg where I worked for a customer for the next two days.

Thank you very much to Genua, the team from Burg Liebenzell and jan@ for organizing a great hackathon.