When building statically, it might be necessary to pass extra
libraries to some frontends. For example:
nconf frontend, using ncursesw
ncursesw is linked against libgpm
Because static dependencies do not follow (no they don't even
with libtool's .la libraries!), we have to set them manually.
Recognise xxx_LIBS as a list of extra libraries (in the form
-lyyy) to pass to frontend xxx.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
We do not want all libraries to be listed in a single list,
because not every frontend need all the libraries.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
When building statically, the ncurses library must be specified if
one tries to link any of the libpanel of libmenu libraries.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Although ${} is valid in Makefiles, the usual convention is
to use $().
(Note: both *are* POSIX.)
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
The package-name can contain the names of symbols, like '$FOO',
which get replaced by their actual value just after parse-time.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Currently, it is almost impossible to statically link the frontends,
because the order in which libraries are linked is incorrect.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Add diffconfig, a handy tool to pretty-print the differences
between two .config files.
Sort the sync-file by destination; sync up with linux-3.3-rc5.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
The images definitions are currently duplicated in the two graphical
frontends.
Make it a common include file.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
If the user passes '--enable-frontends' without a list of frontends
to enable, interpret this as enabling all frontends.
Note, this is different from '--enable-frontends=', where the list
exists, but is empty.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Add a configure --{en,dis}able-frontends=(list) option, to enable
or disable all or the specified list of frontends.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
The default is to check for each frontends if the depndencies are
available. If so, the frontend is enabled, if not, it is disabled.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Allow users to define the package name at ./configure time.
The default "linux" is because kconfig comes from the Linux kernel.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Currently, everything is linked against the ncurses libraries, but
only two frontends use them:
- mconf : libncurses
- nconf : libncurses, libpanel et libmenu
Fixup configure.ac to set the ncurses libs into their own lists,
so that only dependent frontends use them.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
We'll be using that to version the parser shared library, later.
Use '--plain' as argument to get the kernel version.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
A shared library allows for all frontends to share code.
It also allows third-party programs to use the parser.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
If the user does not explicitly enable a frontend, and the pre-requisites
for this frontned are missing, then disable this frontend.
By default, all frontends are enabled. But if (for example) the ncurses
library is missing, and the user did not explicitly enabled them, then
do not build these frontends.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
When syncing the parser+frontends, also grab the kernel changeset
we are syncing from, for later forensics, if needed.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
As frontends are enabled by default, let the help string specify
the --disable-XXX variant of the option, so that autocomplete
always suggests it.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Some versions of the Linux kernel have double quotes, for example
linux-3.1 is named:
"Divemaster Edition"
while linux-3.2 is named:
Saber-toothed Squirrel
Just remove doubles quotes.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
The code comes from the Linux kernel source tree, which is GPLv2
(unless otherwise stated).
Quote Linus' clarification from the COPYING file in the Linux
kernel source tree; add my own interpretation blurb.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Add a ./configure option to select which frontends to install.
By default, all are installed.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
To be noted:
- the lex/yacc/gperf generated files include one another, so it is
not possible to use proper automake constructs to generate the
lexer
- it is possible to tell bison and flex to change the prefix of the
generated symbols, different from the default 'yy'; but if one
does so, then the names of the generated files also include this
prefix instead of the default (here, we use 'zconf' instead of 'yy'
- autoconf has a /built-in/ check for lex, but has no way to know
that the output files is differently named
Because of all these mis-features, the autostuff files contain some
dubious constructs, as a palliative.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>