Hi, Attempting to build bison-3.3.90 on Solaris 11.3 fails already in the configure phase:
$ CC="gcc -m64 -O2" CXX="g++ -m64 -O2" ../configure CPPFLAGS=-Wall checking for a BSD-compatible install... /usr/bin/ginstall -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/gmkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking whether make supports the include directive... yes (GNU style) checking for gcc... gcc -m64 -O2 checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc -m64 -O2 accepts -g... yes checking for gcc -m64 -O2 option to enable C11 features... -std=gnu11 checking dependency style of gcc -m64 -O2 -std=gnu11... gcc3 checking whether we are using the GNU C++ compiler... yes checking whether g++ -m64 -O2 accepts -g... yes checking for g++ -m64 -O2 option to enable C++11 features... -std=gnu++11 checking dependency style of g++ -m64 -O2 -std=gnu++11... gcc3 checking how to run the C preprocessor... gcc -m64 -O2 -std=gnu11 -E checking for grep that handles long lines and -e... /usr/bin/ggrep checking for egrep... /usr/bin/ggrep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether _XOPEN_SOURCE should be defined... no checking for Minix Amsterdam compiler... no checking for ar... ar checking for ranlib... ranlib checking build system type... x86_64-pc-solaris2.11 checking host system type... x86_64-pc-solaris2.11 checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking whether pragma GCC diagnostic push works... yes checking whether C++ compiler handles -Werror -Wunknown-warning-option... no checking whether C++ compiler handles -fno-exceptions... yes checking whether C++ compiler accepts -std=c++98... no checking whether C++ compiler accepts -std=c++98 -stdlib=libc++... no checking whether C++ compiler accepts -std=c++03... no checking whether C++ compiler accepts -std=c++03 -stdlib=libc++... no checking whether C++ compiler accepts -std=c++11... yes checking whether C++ compiler accepts -std=c++14... no checking whether C++ compiler accepts -std=c++14 -stdlib=libc++... no checking whether C++ compiler accepts -std=c++17... no checking whether C++ compiler accepts -std=c++17 -stdlib=libc++... no checking whether C++ compiler accepts -std=c++2a... no checking whether C++ compiler accepts -std=c++2a -stdlib=libc++... no checking whether gcc -m64 -O2 -std=gnu11 supports POSIXLY_CORRECT=1... yes checking whether g++ -m64 -O2 -std=gnu++11 builds executables that work... yes checking whether g++ -m64 -O2 -std=gnu++11 supports POSIXLY_CORRECT=1... yes checking for dmd... no checking for Java compiler... no checking for Java virtual machine... java checking for flex... no checking for lex... lex checking whether lex is flex... no checking lex output file root... lex.yy checking lex library... -ll checking whether yytext is a pointer... no configure: WARNING: bypassing lex because flex is required checking for bison... no checking for byacc... no checking for ranlib... (cached) ranlib checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH. GNU M4 1.4.6 or later is required; 1.4.16 or newer is recommended. GNU M4 1.4.15 uses a buggy replacement strstr on some systems. Glibc 2.9 - 2.12 and GNU M4 1.4.11 - 1.4.15 have another strstr bug. The 'm4' program that is installed in /usr/bin/m4 (not GNU m4). Per GNU standards [1], it should be possible to build the package without needing a GNU m4. If GNU m4 is needed to preprocess a source file, that preprocessed source file ought to be included in the tarball. If GNU m4 is needed for the execution of some test, the test ought to be skipped when no GNU m4 is present. Bruno [1] https://www.gnu.org/prep/standards/html_node/Utilities-in-Makefiles.html
