201 Commits

Author SHA1 Message Date
Yann E. MORIN"
0c1ff07e5a readme: update with a bit more information
- accept patches to the infrastructure
- document known limitations

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-06 01:14:01 +01:00
Yann E. MORIN"
99c1ba70e6 configure: allow passing extra libs per-frontend
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>
2012-03-05 23:28:36 +01:00
Yann E. MORIN"
3157178b68 configure: better isolate libraries search results
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>
2012-03-05 21:52:31 +01:00
Yann E. MORIN"
41e04054f1 configure: fix search for secondary ncurses libs
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>
2012-03-05 21:45:56 +01:00
Yann E. MORIN"
113c20c335 Makefiles: fix variable expansions
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>
2012-03-05 23:36:28 +01:00
Yann E. MORIN"
3a43f0e55d configure: no trailing space for the root-menu prompt
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-04 22:17:54 +01:00
Yann E. MORIN"
8f198886d9 all: update from 3.3-rc6
Nothing, except for version bump.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-04 22:05:05 +01:00
Yann E. MORIN"
4338203dc8 configure: eye-candy for --enable-root-menu-prompt
Add a little bit of eye-candy for the help of --enable-root-menu-prompt

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-04 16:42:10 +01:00
Yann E. MORIN"
aa2d89252c parser: replace package-name by root-menu
Rather than simply seting the "package name", allow setting the
complete root-menu prompt.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-04 00:51:00 +01:00
Yann E. MORIN"
6fa3b210e4 configure: allow $ in package name
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>
2012-03-04 00:09:19 +01:00
Yann E. MORIN"
8cb60cdd1d libs/parser: effectively allow setting the package name
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-03 23:42:09 +01:00
Yann E. MORIN"
8dff48cc88 scripts/ksync: also sync the lex and yacc source files
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-03 23:52:28 +01:00
Yann E. MORIN"
137010fde2 configure: change the order in which tests are made
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-26 18:17:09 +01:00
Yann E. MORIN"
2f14783cc4 frontends: change the order in which libraries are linked
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>
2012-02-26 18:14:33 +01:00
Yann E. MORIN"
b66ea8300f bootstrap: cleanup
A bit of re-organisation in bootstrap.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-26 18:13:40 +01:00
Yann E. MORIN"
c35bd3674c misc: fix exec permissions
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-26 18:09:23 +01:00
Yann E. MORIN"
686907429a misc: add diffconfig script
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>
2012-02-26 11:59:05 +01:00
Yann E. MORIN"
ce53c25263 configure: also check for the wide-char variants of ncurses extra libs
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-26 11:43:03 +01:00
Yann E. MORIN"
e7eab57997 frontends: share the images definitions across graphical frontends
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>
2012-02-26 11:25:31 +01:00
Yann E. MORIN"
cc8248506c configure: move lxdialog check
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-19 23:11:01 +01:00
Yann E. MORIN"
dd8b56a2ab configure: add option to set the config option prefix
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-15 22:16:47 +01:00
Yann E. MORIN"
91bdc37f53 configure: enable all frontends if --enable-frontends has no list
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>
2012-02-14 23:40:24 +01:00
Yann E. MORIN"
f10edb6405 configure enable/disable frontends by list
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>
2012-02-14 23:00:32 +01:00
Yann E. MORIN"
98491e16d2 configure: default for frontends is "auto", not "enabled"
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>
2012-02-14 23:27:32 +01:00
Yann E. MORIN"
d047093e1a configure: add option to set the /package/ name
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>
2012-02-14 19:59:53 +01:00
Yann E. MORIN"
a4c8f796c5 misc: update from linux-3.3-rc3
Not much beside updating the kernel version + hash.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-14 19:49:34 +01:00
Yann E. MORIN"
6e80346b72 configure: properly separate the ncurses libs into its own list
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>
2012-02-14 20:56:17 +01:00
Yann E. MORIN"
c17947a14c configure: pretty-print configuration
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-14 21:37:51 +01:00
Yann E. MORIN"
eb6bb68e7a parser: generate a versioned shared library
Use the kernel version to version the parser shared library.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-02-14 01:00:52 +01:00
Yann E. MORIN"
d138c37c4d scripts/version: add option to output only the kernel version
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>
2012-02-14 01:01:37 +01:00
Yann E. MORIN"
8fd4f66b5d parser: build a shared library
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>
2012-02-14 00:04:03 +01:00
Yann E. MORIN"
f23d709d67 ksync: move to scripts/
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-25 23:03:01 +01:00
Yann E. MORIN"
081b9a03dc configure: if not explicitly enabled, disable frontends with missing deps
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>
2012-01-24 22:47:38 +01:00
"Yann E. MORIN"
7785deecba configure: print the enabled frontends
Signed-off-by:  "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-24 22:49:56 +01:00
Yann E. MORIN"
5fc60a990b ksync: also get kernel changeset
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>
2012-01-24 22:45:59 +01:00
Yann E. MORIN"
0fc798a2b4 configure: only check for ncurses if either mconf or mconf is selected
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-24 00:49:39 +01:00
Yann E. MORIN"
eb0e466e9a configure: chnage help string for disabling frontends
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>
2012-01-22 23:58:25 +01:00
Yann E. MORIN"
8185964f19 ksync: handle names with double quotes
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>
2012-01-22 23:55:14 +01:00
Yann E. MORIN"
e035873cea ksync: fix error message when no kernel path is provided
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-22 19:26:34 +01:00
Yann E. MORIN"
055806e262 scripts: add script to sync from the kernel
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-21 00:52:34 +01:00
Yann E. MORIN"
a32851f727 license: state it's GPLv2
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>
2012-01-21 17:01:36 +01:00
Yann E. MORIN"
ff19c165ed frontends: add qconf
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-20 22:23:09 +01:00
Yann E. MORIN"
9e4343959c misc: move the parser and the lxdialog to libs/
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-20 23:35:54 +01:00
Yann E. MORIN"
fcd6e82eef misc: add missing files
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-20 22:29:46 +01:00
Yann E. MORIN"
645bc75e93 frontends: add gconf
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-18 22:18:31 +01:00
Yann E. MORIN"
24e83e3a99 configure: add option to select frontends
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>
2012-01-17 23:34:33 +01:00
Yann E. MORIN"
a7fd37ae24 configure: effectively deactivate gettext if missing
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-17 23:39:28 +01:00
Yann E. MORIN"
3b3e3c3c92 configure: cleanup
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-17 22:45:42 +01:00
Yann E. MORIN"
413bb8dfb5 all: shuffle files around
Review and reorganise the package layout.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-17 21:18:53 +01:00
Yann E. MORIN"
1e02058631 scripts: add autostuff stuff
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>
2012-01-17 21:01:01 +01:00