-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update bison to 3.4.1 #45
Comments
This release kinda painful for adoption.
So we need to incorporate libtextstyle lib into winflexbison somehow.
This needs more investigation. |
I suggest to use vcpkg to install the gettext "port". This way you end up with a "native" solution (same compiler + target) without an external binary dependency and this should also allow providing translated messages. Hm, libtextstyle may not be part of the port yet, you may want to ask the port's authors to add it either to this port or add a completely new port for it (or create it on your own). |
OK, will need more time for investigation |
A quick glance over the configure script leads to the point that it is an optional dependency. In the used config.h (or compilation commands) define |
That's interesting. Will try to avoid libtextstyle library (and add it later). |
HAVE_LIBTEXTSTYLE doesn't help. There is no option to disable textstyle library in gnu bison. I've merged code from gnu bison v3.4.1 in the branch bison3.4.1. It doesn't compile because of missing "textstyle.h" header. Also there are changes in generated files: "scan-code.c" is missing now and replaced with "scan-code-c.c" with the following content: |
Anyone hacking bison should very likely regenerated the .l files instead of using pre-generated C sources - can you adjust this (remove generated C files from the repo, invoke win_flex to generate them in the CI build)? Concerning textstyle - it is used in Bison as a gnulib optional module - this means that if it isn't locally available a local textstyle.h.in gets copied to textstyle.h and leads to "nothing happens" instead of "check for the header + additional add checks in the code via |
Unfortunately I'm not familiar with autoconf, can you help me with such automation?
The same thing for textstyle. As I understand all these machinery happens during configuration that my project totally miss. I see two solutions here: make configuration one time and use generated files or reproduce configuration stuff in VS project files or CMake configs. |
Just invoking win_flex to generate the C files from the scanner? It may be integrated as a pre-built-step in the project used for building win_bison (which would work in any environment that uses the project/solution to build) or as a Makefile using nmake (which has the benefit that the files will only be re-generated if necessary [= the scanner source changed]).
Yes.
I'd suggest not to use the first one, either can be done in the project files/CMake (or nmake) or - for the part of textstyle: just copy the linked textstyle.h.in into your include directory as textstyle.h for now. As a second step you may use two different configurations in the project file, one that uses a special include directory "lib/textstyle" and one that expects to find the file in the normal places and links against libtextstyle. In any case I highly suggest to split this:
|
Sorry I'm totally lost. |
The main Makefile.am includes src/local.mk where the sources are defined.
ylwrap's usage is
So flex is invoked without arguments, bison is invoked with |
It was my mistake to grab bison source code from github repo. It lacks some sources. I finally managed to upgrade win_bison to 3.4.1 version (without textstyle). |
http://lists.gnu.org/archive/html/bison-announce/2019-05/msg00002.html.
The text was updated successfully, but these errors were encountered: