Autoconf provides macros to check for `Particular programs'. Among
those are `lex' and `yacc' families of programs. When the relevant
macro is used, autoconf will look for a list of programs in the PATH,
perform execution check of the programs found, and set the associated
variable to the best possible match (for example, `flex' has precedence
over `lex').
The problem comes from the behavior of those two macros when no match
is found in the PATH: associated variables are set to a default value
and no further check is performed. This can lead to running ./configure
successfully and encountering an obfuscated error during compilation
for the output of `lex' and `yacc' could not be produced and fed to
the compiler.
This patch adds checks on the result of autoconf macros, and aborts
./configure execution if needed.
Signed-off-by: Clement Chauplannaz <chauplac@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Explicit the behavior regarding silent-rules (i.e. on by default for
release / off by default for development).
Correct a typo in the comment on -Werror option.
Signed-off-by: Clement Chauplannaz <chauplac@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
- Document MacOS X known-issues in the ad hoc file.
- Fix some typos in README file, and introduce a reference to
the known-issues file.
Signed-off-by: Clement Chauplannaz <chauplac@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Rewrite calls to `sed' to remove '-r/--regexp-extended' parameter, which is not
supported by BSD `sed'.
BSD `sed' does implement regular expressions, but enables them with parameter
'-E' which in turn is not officially supported by GNU `sed' - in fact it is
implemented but not documented.
Signed-off-by: Clement Chauplannaz <chauplac@gmail.com>
[yann.morin.1998@free.fr: tweak the root-menu hunk]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
As Justin says:
When building ncurses with --with-termlib several symbols get moved from
libncurses.so to libtinfo.so. Thus when linking with libncurses.so, one
additionally needs to link with libtinfo.so.
Contrary to the Linux kernel (that is on the verge of using pkg-config or
the ncurses*-config scripts), we simply see if we need to link against
libtinfo to get a symbol known to get moved there.
Reported-by: Justin <jlec@gentoo.org>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
As Krzysztof puts it in its commit log in the Linux kernel:
The ncurses library allows for extended colors. The support for extended
colors support depends on wide-character support. ncurses headers
enable extended colors (NCURSES_EXT_COLORS) only when wide-character
support is enabled (NCURSES_WIDECHAR).
The "make menuconfig" uses wide-character ncursesw library, which can be
compiled with wide-character support, but does not define NCURSES_WIDECHAR
and it's using headers without wide-character (and extended colors) support.
This fixes problems with colors on systems with enabled extended colors
(like PLD Linux). Without this patch "make menuconfig" is hard to use.
In kconfig-frontends, we fix this by adding the appropriate CPPFLAGS to the
mconf-specific ncurses CPPFLAGS.
Reported-by: Krzysztof Mazur <krzysiek@podlesie.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
ncurses_EXTRA_CFLAGS are actually used by nconf, so needs to be renamed
to a more meaningful name.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
This brings up all changes accumulated since v3.7 was released:
- get the "CONFIG_" prefix from the environment
- enhancements in mconf: navigable input boxes, better UI, fix in lxdialog
- enhancements in nconf: entirely rewritten help texts, UI tweaks
- fixes in qconf and conf
- fix in documentation
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
When building a devel snapshot (eg. a checkout if the repo), build
with -Werror by default, unles overriden by the user. This should
hopefully help catch errors early.
For releases, do not build with -Werror by default, unless the user
explicitly request -Werror.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
As Jan puts it:
I would simply direct users to read the compiler error message.
That enhances (hopefully) both their knowledge on compiling,
and reduces the walltime configure runs.
Make it so! :-)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Jan Engelhardt <jengelh@inai.de>
Thanks to Jan, let's use autoreconf in bootstrap, instead of our
canned sequence.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Jan Engelhardt <jengelh@inai.de>
Traditionally, Linux distributions have been using the dash as a separator
between the package's upstream versionning and their own local packaging
versioning.
Using a dash in kconfig-frontends' own versioning scheme may confuse the
distributions, which may not expect this situation (and even if some do,
not all do).
In the beginings, I thought about using a dash to make it explicit that
the digits before the dash was Linux' version, while the digit(s) after
the dash was kconfig-frontends' version. That, because the Linux version
has only two digits for .0 releases, and three digits for stable releases.
But since the Linux kernel's Makefile still report a three-digit version
even for .0 releases, we ended up always using a three-digit Linux version,
and thus always had a four-digit kconfig-frontends' version.
So, use a dot instead of a dash.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>