From c7f8b89fbdc055d5ad4063b380a35890e581b7a4 Mon Sep 17 00:00:00 2001 From: Faisal Abbas <90.abbasfaisal@gmail.com> Date: Mon, 17 Aug 2015 17:35:03 +0500 Subject: [PATCH] libs: Makefile and other changes for curses support --- Library/include/curses.h | 17 +++++++---------- Library/include/termcap.h | 5 ++--- Library/libs/Makefile | 11 ++++++++++- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/Library/include/curses.h b/Library/include/curses.h index c5c95b2a..dbcb16e1 100644 --- a/Library/include/curses.h +++ b/Library/include/curses.h @@ -138,7 +138,7 @@ extern unsigned int ACS_LANTERN; extern unsigned int ACS_BLOCK; #ifdef _BIG_MACHINE_ -_PROTOTYPE( char *unctrl, (int _c) ); +_PROTOTYPE( char *unctrl, (char _c) ); _PROTOTYPE( int baudrate, (void)); _PROTOTYPE( void beep, (void)); _PROTOTYPE( void cbreak, (void)); @@ -153,7 +153,7 @@ _PROTOTYPE( int erasechar, (void)); _PROTOTYPE( void fatal, (char *_s) ); _PROTOTYPE( int fixterm, (void)); _PROTOTYPE( void flash, (void)); -_PROTOTYPE( int gettmode, (void)); +_PROTOTYPE( void gettmode, (void)); _PROTOTYPE( void idlok, (WINDOW *_win, bool _flag) ); _PROTOTYPE( WINDOW *initscr, (void)); _PROTOTYPE( void keypad, (WINDOW *_win, bool _flag) ); @@ -164,13 +164,12 @@ _PROTOTYPE( void meta, (WINDOW *_win, bool _flag) ); _PROTOTYPE( int mvcur, (int _oldy, int _oldx, int _newy, int _newx) ); _PROTOTYPE( int mvinch, (int _y, int _x) ); _PROTOTYPE( int mvprintw, (int _y, int _x, char *_fmt, ...) ); -_PROTOTYPE( int mvscanw, (int _y, int _x, char *_fmt, char *_A1, int _A2, - int _A3, int _A4, int _A5) ); +_PROTOTYPE( int mvscanw, (int _y, int _x, const char *_fmt, ...) ); _PROTOTYPE( int mvwin, (WINDOW *_win, int _begy, int _begx) ); _PROTOTYPE( int mvwinch, (WINDOW *_win, int _y, int _x) ); _PROTOTYPE( int mvwprintw, (WINDOW *_win, int _y, int _x, char *_fmt, ...) ); -_PROTOTYPE( int mvwscanw, (WINDOW *_win, int _y, int _x, char *_fmt, char *_A1, - int _A2, int _A3, int _A4, int _A5) ); +_PROTOTYPE( int mvwscanw, (WINDOW *_win, int _y, int _x, const char *_fmt, + ...) ); _PROTOTYPE( WINDOW *newwin, (int _num_lines, int _num_cols, int _y, int _x)); _PROTOTYPE( void nl, (void)); _PROTOTYPE( void nocbreak, (void)); @@ -188,8 +187,7 @@ _PROTOTYPE( int resetterm, (void)); _PROTOTYPE( int saveoldterm, (void)); _PROTOTYPE( int saveterm, (void)); _PROTOTYPE( int savetty, (void)); -_PROTOTYPE( int scanw, (char *_fmt, char *_A1, int _A2, int _A3, int _A4, - int _A5) ); +_PROTOTYPE( int scanw, (const char *_fmt, ...) ); _PROTOTYPE( void scroll, (WINDOW *_win) ); _PROTOTYPE( void scrollok, (WINDOW *_win, bool _flag) ); _PROTOTYPE( int setscrreg, (int _top, int _bottom) ); @@ -218,8 +216,7 @@ _PROTOTYPE( int wmove, (WINDOW *_win, int _y, int _x) ); _PROTOTYPE( void wnoutrefresh, (WINDOW *_win) ); _PROTOTYPE( int wprintw, (WINDOW *win, char *fmt, ...)); _PROTOTYPE( void wrefresh, (WINDOW *_win) ); -_PROTOTYPE( int wscanw, (WINDOW *_win, char *_fmt, char *_A1, int _A2, int _A3, - int _A4, int _A5) ); +_PROTOTYPE( int wscanw, (WINDOW *_win, const char *_fmt, ...)); _PROTOTYPE( int wsetscrreg, (WINDOW *_win, int _top, int _bottom) ); _PROTOTYPE( int wtabsize, (WINDOW *_win, int _ts) ); diff --git a/Library/include/termcap.h b/Library/include/termcap.h index 1e823b3d..c39322ad 100644 --- a/Library/include/termcap.h +++ b/Library/include/termcap.h @@ -14,9 +14,8 @@ extern int tgetflag __P((char *)); extern int tgetnum __P((char *)); extern char *tgetstr __P((char *, char **)); -extern void tputs __P((char *, int, int (*)(int))); +extern int tputs __P((char *, int, void (*outc)(int))); extern char *tgoto __P((char *, int, int)); -extern char *tparam(); /* VARARGS */ +extern char * tparam(char *, char *, int, int, int, int, int); /* VARARGS */ #endif /* _TERMCAP_H */ - diff --git a/Library/libs/Makefile b/Library/libs/Makefile index 8b053867..4e5c44a7 100644 --- a/Library/libs/Makefile +++ b/Library/libs/Makefile @@ -62,9 +62,14 @@ SRC_HARD += regexp.c #SRC_C += strncpy.c strpbrk.c strrchr.c strspn.c strstr.c strtok.c #SRC_C += memchr.c memcmp.c memcpy.c memset.c +SRC_C += termcap.c + +SRC_CURS = $(shell find curses -name '*.c') + OBJ_C = $(SRC_C:.c=.rel) +OBJ_CURS = $(SRC_CURS:.c=.rel) OBJ_HARD = $(SRC_HARD:.c=.rel) -OBJ_ALL = $(OBJ_ASM) $(OBJ_C) $(OBJ_HARD) +OBJ_ALL = $(OBJ_ASM) $(OBJ_C) $(OBJ_CURS) $(OBJ_HARD) all: syslib$(PLATFORM).lib crt0$(PLATFORM).rel crt0nostdio$(PLATFORM).rel liberror.txt @@ -105,9 +110,13 @@ $(OBJ_CRT0NS):%.rel: %.s $(OBJ_C):%.rel: %.c $(CC) $(CC_OPT) $(@:.rel=.c) +$(OBJ_CURS):%.rel: %.c + $(CC) $(CC_OPT) $(@:.rel=.c) -o ./curses/ + $(OBJ_HARD):%.rel: %.c $(CC) $(CC_NOOPT) $(@:.rel=.c) clean: rm -rf *.rel *.asm *.sym *.lst *.lib *~ syscall.l libc.l syslib.l liberror.txt + (cd curses; rm -rf *.rel *.asm *.sym *.lst *~) (cd fuzix; make clean) -- 2.34.1