On Sun, Sep 01, 2024 at 06:48:31PM +0300, Eli Zaretskii wrote: > > From: Gavin Smith <[email protected]> > > Date: Sun, 1 Sep 2024 16:25:17 +0100 > > Cc: [email protected] > > > > . C source files that are generated from *.xs files are no no longer > > distributed, so xsubpp from Perl is needed to build XS modules. > > Why this change? That's not something I'd expect to see in a bugfix > release, since it potentially changes the build process.
I think the fear was that since we distribute the *.xs files and the Makefile also has rules to generate the *.c files from the *.xs files, it is possible that the distributed *.c file is overwritten automatically. We felt it was wrong to overwrite a distributed file with no way of getting back the original version (other than extracting the distribution archive again.) Here is the link to the discussion: https://lists.gnu.org/archive/html/bug-texinfo/2023-12/msg00011.html ""make distclean" does not bring back build tree to previous state" (Hilmar Preuße) https://lists.gnu.org/archive/html/bug-texinfo/2021-02/msg00160.html "texinfo-6.7.90 tarball contains files that "make distclean" erases" (Bruno Haible) I resisted making this change for a while but it seemed to be the right thing. There may have been other ways to fix the "make distclean" issue that people were complaining about. If it causes a problem on some platforms we could revisit this. > Anyway, how does one check whether one has or doesn't have xsubpp? > > Thanks. Run "xsubpp -v" or "which xsubpp" from the command line. The configure script also checks for xsubpp when testing if XS modules can be built.
