Repository navigation
Build with a single configure script - #47
Merged
Merged
Conversation
The top-level configure only located GAP; `make` then copied a second configure script from cnf/ into bin/<arch>, ran it there with the options of the first, and built with the Makefile it generated. The hand-over lost the quoting of CC and of any option containing a space, and compiling two levels below the sources made gcov record them as ../../src.x11/*.c. Do all checks in the one configure.ac, and let the top-level Makefile compile src.x11/*.c into bin/<arch>, where xgap.sh expects the executable. This makes cnf/ obsolete, including config.guess, config.sub and install-sh, which no remaining check needs. AC_PROG_CC_C_O and AC_C_CONST are gone as the sources use neither result; config.h is otherwise unchanged, as are the compiler and linker flags. Assisted-by: Claude Code (Fable 5.1)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The top-level configure only located GAP;
makethen copied a second configure script fromcnf/intobin/<arch>, ran it there with the options of the first, and built with the Makefile that one generated.This does all checks in the one
configure.acand lets the top-level Makefile compilesrc.x11/*.cintobin/<arch>, wherexgap.shexpects the executable.cnf/is gone, includingconfig.guess,config.subandinstall-sh, which no remaining check needs.Consequences:
CCor an option containing a space (CC="gcc -std=gnu23"as set by autoconf 2.72,CFLAGS="-O0 -g") no longer breaks the build, as nothing is handed to a second configure. This makes Fix build when CC contains a space #46 unnecessary.src.x11/*.cinstead of../../src.x11/*.c.Checked on macOS with autoconf 2.72 against a build of the old system:
config.his identical except for the macros ofAC_PROG_CC_C_OandAC_C_CONST, which I dropped because the sources use neither; compiler and linker flags are identical apart from the source path. A secondmakedoes nothing, touching a header rebuilds all objects,make clean && makeworks, and the resulting binary opens a subgroup lattice under Xvfb. Not tested locally: Linux, GAP 4.11, building the manual with the updateddoc/install.tex.Assisted-by: Claude Code (Fable 5.1)