Re: [PATCH] Add `headerscheck` run_target to meson
| От | Bilal Yavuz |
|---|---|
| Тема | Re: [PATCH] Add `headerscheck` run_target to meson |
| Дата | |
| Msg-id | CAN55FZ2vFfRJ5Ewj44oo27J=qY=E9+3d8S_rcMbuGJP-Rm7yPQ@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: [PATCH] Add `headerscheck` run_target to meson (Miłosz Bieniek <bieniek.milosz0@gmail.com>) |
| Список | pgsql-hackers |
Hi, On Sat, 29 Nov 2025 at 14:07, Miłosz Bieniek <bieniek.milosz0@gmail.com> wrote: > > pt., 28 lis 2025 o 16:17 Nazir Bilal Yavuz <byavuz81@gmail.com> napisał(a): > > > > Hi, > > > > On Fri, 28 Nov 2025 at 18:05, Nazir Bilal Yavuz <byavuz81@gmail.com> wrote: > > > > > > On Fri, 28 Nov 2025 at 17:03, Miłosz Bieniek <bieniek.milosz0@gmail.com> wrote: > > > > > > > > pt., 28 lis 2025 o 12:53 Peter Eisentraut <peter@eisentraut.org> napisał(a): > > > > > > > > > > On 27.11.25 10:28, Miłosz Bieniek wrote: > > > > > > While reviewing a patch I noticed that we have a `make -s headerscheck` > > > > > > but there is no equivalent in meson. > > > > > > I prepared a small patch that adds `headerscheck` and `cpluspluscheck` > > > > > > targets. > > > > > > > > > > This would be good to have, but I don't think your patch works. It > > > > > seems you need to add the srcdir and builddir command-line arguments to > > > > > the invocations. > > > > > > > > > > > > > I think you are right. I added srcdir and builddir arguments. > > > > > > The headerscheck script pulls some information from Makefile.global > > > after the configure [1] but meson does not generate a full version of > > > Makefile.global [2], so it does not have the required information to > > > check perl and python headers. If you run 'meson compile > > > headerscheck', you get errors like: > > > > Sorry, I clicked send early. > > > > Two solutions came to my mind but I am not sure which one is better: > > > > 1) We can add missing information to the generated Makefile.global in > > the meson.build. > > > > 2) We can send required information as arguments to the headerscheck script. > > > > Any thoughts or suggestions? > > Thank you for the detailed response. > I initially thought the errors with `#include <Python.h>` and > `#include <EXTREN.h>` were only an issue with my local setup. > If I understand correctly, your first proposal would address this > problem without requiring integration with the headerscheck script, > which in my opinion would be a cleaner solution. > However, I would definitely like to hear what others think as well. I wanted to experiment with the first proposal and it turns out I need to edit the headerscheck script. There are 3 patches attached: 0001 adds python_includespec and perl_includespec variables to the Makefile.global of the meson build. 0002 adds headerscheck target to meson build like you do but with 2 extra changes. First one is that, I moved the headerscheck script to a variable and used it in the target commands. Second one is that, headerscheck script could not find the perl_includespec and python_includespec variables because of the tabs in the sed command, I changed them with '[:space:]' and it worked. I am not sure if that is the correct fix but I just wanted to see if the script will work. 0003 adds icu_flags option to the meson build and sets 'ICU_CFLAGS' Makefile.global variable to that option. This change is not needed for the headerscheck script to work but I saw that was missing and just wanted to show it. If we want to add that, this probably needs its own thread. -- Regards, Nazir Bilal Yavuz Microsoft
Вложения
В списке pgsql-hackers по дате отправления: