groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HEAD build failure with OpenBSD yacc


From: Lennart Jablonka
Subject: Re: HEAD build failure with OpenBSD yacc
Date: Tue, 19 Mar 2024 17:30:20 +0000

Quoth G. Branden Robinson:
Popping the stack from history, I cannot reproduce this problem building
on OpenBSD 7.4.  Bison is installed and found by groff's configure
script.  It's not my machine; I don't have superuser privileges.

Yes, it works using bison. Even without root access, you can use OpenBSD’s yacc: Delete src/preproc/eqn/eqn.cpp and re-run configure with ac_cv_prog_YACC=/usr/bin/yacc set.

Further, eqn.ypp says this, grabbing the "config.h" header file that
gnulib demands so ubiquitously:

%{
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#include "lib.h"
#include "box.h"
extern int non_empty_flag;
int yylex();
void yyerror(const char *);
%}

Yes, but do look at yacc’s output, eqn.cpp. Using OpenBSD’s yacc, eqn.cpp starts with this:

        #include <stdlib.h>
        #include <string.h>
        #define YYBYACC 1
        #define YYMAJOR 1
        #define YYMINOR 9
        #define YYLEX yylex()
        #define YYEMPTY -1
        #define yyclearin (yychar=(YYEMPTY))
        #define yyerrok (yyerrflag=0)
        #define YYRECOVERING() (yyerrflag!=0)
        #define YYPREFIX "yy"
        #line 19 "src/preproc/eqn/eqn.ypp"
        #ifdef HAVE_CONFIG_H
        #include <config.h>
        #endif

        #include <stdio.h>
        #include <string.h>
        #include <stdlib.h>

        #include "lib.h"
        #include "box.h"
        extern int non_empty_flag;
        int yylex();
        void yyerror(const char *);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]