Get rid of the rtermcap stuff (embedding termcaps into the program). This

is needed in sysinstall on boot, but not in sade on a fully working system.

After this change I noticed no change in behavior on a vty when TERM is not
set.
This commit is contained in:
Alexander Leidinger 2006-08-09 09:12:01 +00:00
parent 47dbd966d9
commit 89cf3df166
5 changed files with 5 additions and 119 deletions

View file

@ -9,7 +9,7 @@ MAN= sade.8
SRCS= command.c config.c devices.c \
disks.c dispatch.c dmenu.c \
globals.c install.c keymap.c \
label.c main.c makedevs.c menus.c misc.c \
label.c main.c menus.c misc.c \
msg.c system.c termcap.c \
variable.c ${_wizard} keymap.h
WARNS?= 3
@ -24,52 +24,7 @@ CFLAGS+= -I${.CURDIR}/../../gnu/lib/libdialog -I.
DPADD= ${LIBDIALOG} ${LIBNCURSES} ${LIBUTIL} ${LIBDISK} ${LIBFTPIO}
LDADD= -ldialog -lncurses -lutil -ldisk -lftpio
CLEANFILES= makedevs.c rtermcap
CLEANFILES+= keymap.tmp keymap.h
.if exists(${.CURDIR}/../../share/termcap/termcap.src)
RTERMCAP= TERMCAP=${.CURDIR}/../../share/termcap/termcap.src ./rtermcap
.else
RTERMCAP= ./rtermcap
.endif
makedevs.c: Makefile rtermcap
echo '#include <sys/types.h>' > makedevs.c
${RTERMCAP} ansi | \
file2c 'const char termcap_ansi[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25w | \
file2c 'const char termcap_cons25w[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25 | \
file2c 'const char termcap_cons25[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25-m | \
file2c 'const char termcap_cons25_m[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25r | \
file2c 'const char termcap_cons25r[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25r-m | \
file2c 'const char termcap_cons25r_m[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25l1 | \
file2c 'const char termcap_cons25l1[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} cons25l1-m | \
file2c 'const char termcap_cons25l1_m[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} vt100 | \
file2c 'const char termcap_vt100[] = {' ',0};' \
>> makedevs.c
${RTERMCAP} xterm | \
file2c 'const char termcap_xterm[] = {' ',0};' \
>> makedevs.c
build-tools: rtermcap
rtermcap: rtermcap.c
${CC} -o ${.TARGET} ${.ALLSRC} -ltermcap
CLEANFILES= keymap.tmp keymap.h
.if ${MACHINE} == "pc98"
KEYMAPS= jp.pc98 jp.pc98.iso

View file

@ -1,16 +0,0 @@
/* $FreeBSD$ */
#include <stdio.h>
#include <termcap.h>
int
main(int argc, char **argv)
{
char buf[4096];
int i;
if (argc < 2)
return 1;
i = tgetent(buf, argv[1]);
printf("%s",buf);
return 0;
}

View file

@ -392,23 +392,6 @@ extern int loadKeymap(const char *lang);
extern int diskLabelEditor(dialogMenuItem *self);
extern int diskLabelCommit(dialogMenuItem *self);
/* makedevs.c (auto-generated) */
extern const char termcap_ansi[];
extern const char termcap_vt100[];
extern const char termcap_cons25w[];
extern const char termcap_cons25[];
extern const char termcap_cons25_m[];
extern const char termcap_cons25r[];
extern const char termcap_cons25r_m[];
extern const char termcap_cons25l1[];
extern const char termcap_cons25l1_m[];
extern const char termcap_xterm[];
extern const u_char font_iso_8x16[];
extern const u_char font_cp850_8x16[];
extern const u_char font_cp866_8x16[];
extern const u_char koi8_r2cp866[];
extern u_char default_scrnmap[];
/* misc.c */
extern Boolean file_readable(char *fname);
extern Boolean file_executable(char *fname);

View file

@ -242,33 +242,6 @@ systemHelpFile(char *file, char *buf)
return NULL;
}
void
systemChangeTerminal(char *color, const u_char c_term[],
char *mono, const u_char m_term[])
{
if (OnVTY) {
int setupterm(char *color, int, int *);
if (ColorDisplay) {
setenv("TERM", color, 1);
setenv("TERMCAP", c_term, 1);
reset_shell_mode();
setterm(color);
cbreak(); noecho();
}
else {
setenv("TERM", mono, 1);
setenv("TERMCAP", m_term, 1);
reset_shell_mode();
setterm(mono);
cbreak(); noecho();
}
}
clear();
refresh();
dialog_clear();
}
int
vsystem(const char *fmt, ...)
{

View file

@ -24,7 +24,7 @@
#define TTY_STATUS_LINE 23
static void
prompt_term(char **termp, char **termcapp)
prompt_term(char **termp)
{
char str[80];
@ -32,7 +32,6 @@ prompt_term(char **termp, char **termcapp)
printf("Defaulting to an ANSI compatible terminal - please press RETURN\n");
fgets(str, 80, stdin); /* Just to make it interactive */
*termp = (char *)"ansi";
*termcapp = (char *)termcap_ansi;
}
int
@ -54,13 +53,11 @@ set_termcap(void)
if (!OnVTY || (stat < 0)) {
if (!term) {
char *term, *termcap;
char *term;
prompt_term(&term, &termcap);
prompt_term(&term);
if (setenv("TERM", term, 1) < 0)
return -1;
if (setenv("TERMCAP", termcap, 1) < 0)
return -1;
}
if (DebugFD < 0)
DebugFD = open("/dev/null", O_RDWR, 0);
@ -82,24 +79,18 @@ set_termcap(void)
if (!term) {
if (setenv("TERM", "cons25w", 1) < 0)
return -1;
if (setenv("TERMCAP", termcap_cons25w, 1) < 0)
return -1;
}
#else
if (ColorDisplay) {
if (!term) {
if (setenv("TERM", "cons25", 1) < 0)
return -1;
if (setenv("TERMCAP", termcap_cons25, 1) < 0)
return -1;
}
}
else {
if (!term) {
if (setenv("TERM", "cons25-m", 1) < 0)
return -1;
if (setenv("TERMCAP", termcap_cons25_m, 1) < 0)
return -1;
}
}
#endif