kconfig/nconf.h
author "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
Wed Dec 14 16:55:22 2011 +0100 (2011-12-14)
branch1.13
changeset 2848 1ff89596dab0
permissions -rw-r--r--
libc/eglibc: fix localedef 2.14 build

The localedef of eglibc 2.14 requires NOT_IN_libc to be defined in order to
compile intl/l10nflist.c.

This is because localedef is built separately from eglibc and uses some parts of
eglibc that don't compile in standalone without this preprocessor definition.

This fixes the following error:

[ALL ] gcc -g -O2 -DNO_SYSCONF -DNO_UNCOMPRESS
-DLOCALE_PATH='"/usr/lib/locale:/usr/share/i18n"'
-DLOCALEDIR='"/usr/lib/locale"' -DLOCALE_ALIAS_PATH='"/usr/share/locale"'
-DCHARMAP_PATH='"/usr/share/i18n/charmaps"'
-DREPERTOIREMAP_PATH='"/usr/share/i18n/repertoiremaps"'
-DLOCSRCDIR='"/usr/share/i18n/locales"' -Iglibc/locale/programs -Iglibc/locale
-I/<snip>/.build/src/eglibc-localedef-2_14/include
-I/<snip>/.build/src/eglibc-localedef-2_14 -I.
-include /<snip>/.build/src/eglibc-localedef-2_14/include/always.h -Wall
-Wno-format -c -o locarchive.o glibc/locale/programs/locarchive.c
[ALL ] glibc/locale/programs/locarchive.c: In function 'enlarge_archive':
[ALL ] glibc/locale/programs/locarchive.c:303:21: warning: variable
'oldlocrectab' set but not used [-Wunused-but-set-variable]
[ALL ] In file included from glibc/locale/programs/locarchive.c:651:0:
[ALL ] glibc/locale/programs/../../intl/l10nflist.c: In function
'_nl_normalize_codeset':
[ERROR] glibc/locale/programs/../../intl/l10nflist.c:342:9: error:
'_nl_C_locobj_ptr' undeclared (first use in this function)
[ALL ] glibc/locale/programs/../../intl/l10nflist.c:342:9: note: each
undeclared identifier is reported only once for each function it appears in
[ALL ] glibc/locale/programs/locarchive.c: In function
'add_locales_to_archive':
[ALL ] glibc/locale/programs/locarchive.c:1450:7: warning: passing argument
1 of '__xpg_basename' discards 'const' qualifier from pointer target type
[enabled by default]
[ALL ] /usr/include/libgen.h:35:14: note: expected 'char *' but argument is
of type 'const char *'
[ERROR] make[1]: *** [locarchive.o] Error 1

Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
(transplanted from 4cd9134739b594451794cf61a6e1b137422cdafd)
yann@2454
     1
/*
yann@2454
     2
 * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com?
yann@2454
     3
 * Released under the terms of the GNU GPL v2.0.
yann@2454
     4
 *
yann@2454
     5
 * Derived from menuconfig.
yann@2454
     6
 *
yann@2454
     7
 */
yann@2454
     8
yann@2454
     9
#include <ctype.h>
yann@2454
    10
#include <errno.h>
yann@2454
    11
#include <fcntl.h>
yann@2454
    12
#include <limits.h>
yann@2454
    13
#include <stdarg.h>
yann@2454
    14
#include <stdlib.h>
yann@2454
    15
#include <string.h>
yann@2454
    16
#include <unistd.h>
yann@2454
    17
#include <locale.h>
yann@2454
    18
#include <curses.h>
yann@2454
    19
#include <menu.h>
yann@2454
    20
#include <panel.h>
yann@2454
    21
#include <form.h>
yann@2454
    22
yann@2454
    23
#include <stdio.h>
yann@2454
    24
#include <time.h>
yann@2454
    25
#include <sys/time.h>
yann@2454
    26
yann@2454
    27
#include "ncurses.h"
yann@2454
    28
yann@2454
    29
#define max(a, b) ({\
yann@2454
    30
		typeof(a) _a = a;\
yann@2454
    31
		typeof(b) _b = b;\
yann@2454
    32
		_a > _b ? _a : _b; })
yann@2454
    33
yann@2454
    34
#define min(a, b) ({\
yann@2454
    35
		typeof(a) _a = a;\
yann@2454
    36
		typeof(b) _b = b;\
yann@2454
    37
		_a < _b ? _a : _b; })
yann@2454
    38
yann@2454
    39
typedef enum {
yann@2454
    40
	NORMAL = 1,
yann@2454
    41
	MAIN_HEADING,
yann@2454
    42
	MAIN_MENU_BOX,
yann@2454
    43
	MAIN_MENU_FORE,
yann@2454
    44
	MAIN_MENU_BACK,
yann@2454
    45
	MAIN_MENU_GREY,
yann@2454
    46
	MAIN_MENU_HEADING,
yann@2454
    47
	SCROLLWIN_TEXT,
yann@2454
    48
	SCROLLWIN_HEADING,
yann@2454
    49
	SCROLLWIN_BOX,
yann@2454
    50
	DIALOG_TEXT,
yann@2454
    51
	DIALOG_MENU_FORE,
yann@2454
    52
	DIALOG_MENU_BACK,
yann@2454
    53
	DIALOG_BOX,
yann@2454
    54
	INPUT_BOX,
yann@2454
    55
	INPUT_HEADING,
yann@2454
    56
	INPUT_TEXT,
yann@2454
    57
	INPUT_FIELD,
yann@2454
    58
	FUNCTION_TEXT,
yann@2454
    59
	FUNCTION_HIGHLIGHT,
yann@2454
    60
	ATTR_MAX
yann@2454
    61
} attributes_t;
yann@2454
    62
extern attributes_t attributes[];
yann@2454
    63
yann@2454
    64
typedef enum {
yann@2454
    65
	F_HELP = 1,
yann@2454
    66
	F_SYMBOL = 2,
yann@2454
    67
	F_INSTS = 3,
yann@2454
    68
	F_CONF = 4,
yann@2454
    69
	F_BACK = 5,
yann@2454
    70
	F_SAVE = 6,
yann@2454
    71
	F_LOAD = 7,
yann@2454
    72
	F_SEARCH = 8,
yann@2454
    73
	F_EXIT = 9,
yann@2454
    74
} function_key;
yann@2454
    75
yann@2454
    76
void set_colors(void);
yann@2454
    77
yann@2454
    78
/* this changes the windows attributes !!! */
yann@2454
    79
void print_in_middle(WINDOW *win,
yann@2454
    80
		int starty,
yann@2454
    81
		int startx,
yann@2454
    82
		int width,
yann@2454
    83
		const char *string,
yann@2454
    84
		chtype color);
yann@2454
    85
int get_line_length(const char *line);
yann@2454
    86
int get_line_no(const char *text);
yann@2454
    87
const char *get_line(const char *text, int line_no);
yann@2454
    88
void fill_window(WINDOW *win, const char *text);
yann@2454
    89
int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...);
yann@2454
    90
int dialog_inputbox(WINDOW *main_window,
yann@2454
    91
		const char *title, const char *prompt,
yann@2454
    92
		const char *init, char *result, int result_len);
yann@2454
    93
void refresh_all_windows(WINDOW *main_window);
yann@2454
    94
void show_scroll_win(WINDOW *main_window,
yann@2454
    95
		const char *title,
yann@2454
    96
		const char *text);