--- bogl-0.1.18.orig/pngtobogl.1 +++ bogl-0.1.18/pngtobogl.1 @@ -0,0 +1,8 @@ +.TH "BOGL" "1" "March 2011" "BOGL" "BOGL" +.SH NAME +pngtobogl \- Convert PNG image to bogl C file +.SH SYNOPSIS +\fBpngtobogl\fR \fIgraphic.png\fR > \fIgraphic.c\fR +.SH DESCRIPTION +.B pngtobogl +converts a PNG image into a C file that can be used with the bogl library. There is no option. --- bogl-0.1.18.orig/bterm.ti +++ bogl-0.1.18/bterm.ti @@ -26,3 +26,4 @@ khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, kspd=^Z, ri=\EM, + bold=\E[1m, --- bogl-0.1.18.orig/bogl-cfb.c +++ bogl-0.1.18/bogl-cfb.c @@ -55,7 +55,7 @@ /* For anything else, assert that we are actually aligned on a pixel boundary, otherwise we are sure to lose */ dst = (unsigned char*) d + offset * b / 8; - assert((((unsigned int)dst * 8) % b) == 0); + assert((((unsigned long)dst * 8) % b) == 0); /* Sanity... */ assert (b <= 32); @@ -79,7 +79,7 @@ /* printf ("Filling %d pixels == %d bytes\n\r", len, len * b / 8); */ /* Align to an int boundary */ - while ((unsigned int)dst % sizeof(unsigned int)) + while ((unsigned long)dst % sizeof(unsigned int)) { /* printf ("Aligning %d bytes\n\r", (unsigned int)dst % sizeof(unsigned int)); */ if (b >= 8) --- bogl-0.1.18.orig/bogl-tcfb.c +++ bogl-0.1.18/bogl-tcfb.c @@ -137,7 +137,7 @@ return; bogl_drawing = 1; - dst = (char *) bogl_frame + (y1 * bogl_line_len); + dst = (unsigned char *) bogl_frame + (y1 * bogl_line_len); for (; y1 < y2; y1++) { memset_var (dst, cmap_lookup(c), x1, x2 - x1, bpp); @@ -309,7 +309,7 @@ if (visible) { - char *dst = save; + char *dst = (char *) save; char *src = (char *) bogl_frame + (sx_ofs * bpp / 8) + (y1 * bogl_line_len); @@ -327,7 +327,7 @@ char *dst = (char *) bogl_frame + (sx_ofs * bpp / 8) + (y1 * bogl_line_len); - char *src = save; + char *src = (char *) save; int y; for (y = 0; y < y_count; y++) @@ -357,7 +357,7 @@ unsigned short bg_bits, fg_bits; int x; - dst = (char *) bogl_frame + dst = (unsigned char *) bogl_frame + ((y1 + y) * bogl_line_len); bg_bits = *mask_p ^ *color_p; fg_bits = *mask_p & *color_p; --- bogl-0.1.18.orig/mergebdf.1 +++ bogl-0.1.18/mergebdf.1 @@ -0,0 +1,8 @@ +.TH "BOGL" "1" "March 2011" "BOGL" "BOGL" +.SH NAME +mergebdf \- Merge BDF fonts +.SH SYNOPSIS +\fBmergebdf\fR \fIfont1.bdf\fR ... > \fInewfont.bdf\fR +.SH DESCRIPTION +.B mergebdf +merges several BDF fonts into one. There is no option. --- bogl-0.1.18.orig/bterm.1 +++ bogl-0.1.18/bterm.1 @@ -45,6 +45,20 @@ of .B bterm, it should be specified on the command line. +.SH EXIT STATUS +The following exit values are returned: +.TP +0 +Successful completion. +.TP +1-125 +Exit code from executed program +.TP +127 +Failed to exec program +.TP +>=128 +Program terminated by signal. .SH NOTES On Debian systems, one appropriate BDF font can be found in the .B bf-utf-source --- bogl-0.1.18.orig/boglP.h +++ bogl-0.1.18/boglP.h @@ -25,4 +25,6 @@ int bogl_fail (const char *, ...); +int bogl_cloexec (int fd); + #endif /* boglP_h */ --- bogl-0.1.18.orig/bogl.c +++ bogl-0.1.18/bogl.c @@ -40,9 +40,11 @@ #include #include +#if 0 /* stopped being safe.. */ /* Yes, I know, we shouldn't be including headers from the kernel. But XFree86 also uses this one (to get PAGE_MASK) so it's probably safe. */ #include +#endif #include "bogl.h" #include "boglP.h" @@ -112,6 +114,7 @@ unsigned long bogl_frame_offset, bogl_frame_len; struct fb_var_screeninfo fb_var; struct vt_stat vts; + int PAGE_MASK = ~(sysconf(_SC_PAGESIZE) - 1); assert (status < 2); visible = 1; @@ -121,12 +124,16 @@ fb = open ("/dev/fb/0", O_RDWR); if (fb < 0) return bogl_fail ("opening /dev/fb0: %s", strerror (errno)); + if (bogl_cloexec (fb) < 0) + return bogl_fail ("setting /dev/fb0 close-on-exec: %s", strerror (errno)); tty = open ("/dev/tty0", O_RDWR); if (tty < 0) tty = open ("/dev/vc/0", O_RDWR); if (tty < 0) return bogl_fail ("opening /dev/tty0: %s", strerror (errno)); + if (bogl_cloexec (tty) < 0) + return bogl_fail ("setting /dev/tty0 close-on-exec: %s", strerror (errno)); if (-1 == ioctl (tty, VT_GETSTATE, &vts)) return bogl_fail ("can't get VT state: %s", strerror (errno)); @@ -627,3 +634,19 @@ return 0; } + +/* Set a file descriptor to close-on-exec. */ +int +bogl_cloexec(int fd) +{ + int flags; + + flags = fcntl (fd, F_GETFD); + if (flags < 0) + return flags; + + if (fcntl (fd, F_SETFD, flags | FD_CLOEXEC) < 0) + return -1; + + return 0; +} --- bogl-0.1.18.orig/reduce-font.c +++ bogl-0.1.18/reduce-font.c @@ -39,7 +39,7 @@ for (i = 0 ; i < 32 ; x <<= 1, ++i) putchar (x & 0x80000000 ? '1' : '0'); - printf (": %d\n", l); + printf (": %zu\n", l); } int @@ -57,7 +57,7 @@ fprintf (stderr, "setlocale: %s\n", locale); #if 1 - fprintf (stderr, "FYI: MB_CUR_MAX/MB_LEN_MAX: %d/%d\n", MB_CUR_MAX, MB_LEN_MAX); + fprintf (stderr, "FYI: MB_CUR_MAX/MB_LEN_MAX: %zu/%d\n", MB_CUR_MAX, MB_LEN_MAX); #endif if (argc != 2) usage (); @@ -89,16 +89,16 @@ switch (got = mbrtowc (&wc, buffer, avail, &wstate)) { case -1: /* An error occured */ - fprintf (stderr, "error -1 at position %ld (bytes: %d %*.*s)\n", pos, avail, avail, avail, buffer); + fprintf (stderr, "error -1 at position %ld (bytes: %zu %*.*s)\n", pos, avail, (int) avail, (int) avail, buffer); error = 1; break; case -2: - fprintf (stderr, "-2: bytes: %d %*.*s\n", avail, avail, avail, buffer); + fprintf (stderr, "-2: bytes: %zu %*.*s\n", avail, (int) avail, (int) avail, buffer); continue; case 0: /* Nothing's read so far */ - fprintf (stderr, "0: bytes: %d %*.*s\n", avail, avail, avail, buffer); + fprintf (stderr, "0: bytes: %zu %*.*s\n", avail, (int) avail, (int) avail, buffer); continue; default: /* Seems to read something reasonable */ @@ -131,7 +131,7 @@ for (chars = 0, i = 0 ; i < BITS_NO ; ++i) chars += bits (used[i]); - fprintf (stderr, "Used chars: %d (%d processed)\n", chars, pos); + fprintf (stderr, "Used chars: %zu (%zu processed)\n", chars, pos); #if 1 { char *buf = (char *)malloc (1024); @@ -142,11 +142,11 @@ if (header) { if (strncmp (buf, "CHARS ", 6) == 0) - printf ("CHARS %d\n", chars); + printf ("CHARS %zu\n", chars); else if (strncmp (buf, "STARTCHAR ", 10) == 0) header = 0; else - fprintf (stdout, buf); + fprintf (stdout, "%s", buf); } if (!header) @@ -159,7 +159,7 @@ } if (docopy) - fprintf (stdout, buf); + fprintf (stdout, "%s", buf); } } --- bogl-0.1.18.orig/bogl-term.h +++ bogl-0.1.18/bogl-term.h @@ -5,7 +5,7 @@ #include struct bogl_term { - const struct bogl_font *font; + struct bogl_font *font; int xbase, ybase; int xsize, ysize; int xstep, ystep; @@ -13,13 +13,14 @@ int def_fg, def_bg; int fg, bg, ul; int rev; + int bold; int state; int cur_visible; int xp, yp; int arg[2]; mbstate_t ps; wchar_t *screen; /* character in cell, or 0 */ - int *screenfg, *screenbg, *screenul; /* colours in cell */ + int *screenfg, *screenbg, *screenul, *screenbd; /* colours in cell */ char *dirty; /* bitmask of dirty chars */ wchar_t **cchars; /* combining chars in cell, or 0 */ int yorig; /* increment this to scroll */ --- bogl-0.1.18.orig/bogl-font.c +++ bogl-0.1.18/bogl-font.c @@ -103,7 +103,7 @@ /* Attempt to malloc NBYTES bytes. Sets a BOGL error message on failure. Returns the result of the malloc() operation in any case. */ - static void * + void * smalloc (size_t nbytes) { void *p = malloc (nbytes); @@ -298,7 +298,7 @@ goto lossage; } - cp = strstr (font_name, ".bdf"); + cp = (unsigned char *) strstr (font_name, ".bdf"); if (cp) *cp = 0; for (cp = (unsigned char *) font_name; *cp; cp++) --- bogl-0.1.18.orig/bogl-term.c +++ bogl-0.1.18/bogl-term.c @@ -26,8 +26,7 @@ #include "bogl.h" #include "bogl-term.h" - -#define MAX_CCHARS 5 +#include struct bogl_term *bogl_term_new(struct bogl_font *font) { @@ -53,6 +52,7 @@ term->fg = term->def_fg = 0; term->bg = term->def_bg = 7; term->rev = 0; + term->bold = 0; term->state = 0; term->cur_visible = 1; memset(&term->ps, 0, sizeof(&term->ps)); @@ -62,12 +62,14 @@ term->screenfg = malloc(term->xsize * term->ysize * sizeof(int)); term->screenbg = malloc(term->xsize * term->ysize * sizeof(int)); term->screenul = malloc(term->xsize * term->ysize * sizeof(int)); + term->screenbd = malloc(term->xsize * term->ysize * sizeof(int)); term->cchars = malloc(term->xsize * term->ysize * sizeof(wchar_t *)); - if (!term->screen || !term->screenfg || !term->screenbg || !term->screenul || !term->cchars || !term->dirty) { + if (!term->screen || !term->screenfg || !term->screenbg || !term->screenul || !term->screenbd || !term->cchars || !term->dirty) { free(term->screen); free(term->screenfg); free(term->screenbg); free(term->screenul); + free(term->screenbd); free(term->cchars); free(term->dirty); free(term); @@ -78,6 +80,7 @@ term->screenfg[i] = term->def_fg; term->screenbg[i] = term->def_bg; term->screenul[i] = 0; + term->screenbd[i] = 0; term->cchars[i] = 0; term->dirty[i] = 1; } @@ -102,6 +105,8 @@ return 0; if(term->screenul[p1] != term->screenul[p2]) return 0; + if(term->screenbd[p1] != term->screenbd[p2]) + return 0; return 1; } @@ -115,6 +120,8 @@ return 0; if(term->screenul[p1] != 0) return 0; + if(term->screenbd[p1] != 0) + return 0; return 1; } @@ -190,6 +197,7 @@ term->screenfg[p] = term->fg; term->screenbg[p] = term->bg; term->screenul[p] = 0; + term->screenbd[p] = 0; term->dirty[p] = 1; free (term->cchars[p]); term->cchars[p] = 0; @@ -198,11 +206,14 @@ static void put_char (struct bogl_term *term, int x, int y, wchar_t wc, wchar_t *cchars, - int fg, int bg, int ul) + int fg, int bg, int ul, int bd) { char buf[MB_LEN_MAX]; int j, k, r, w; + if (bd) + fg += 8; + wctomb(0, 0); if ((k = wctomb(buf, wc)) == -1) return; @@ -212,7 +223,7 @@ bogl_text (XPOS(x), YPOS(y), buf, k, fg, bg, ul, term->font); if (cchars) - for (j = 0; j < MAX_CCHARS && cchars[j]; j++) + for (j = 0; cchars[j]; j++) { wctomb(0, 0); if ((k = wctomb(buf, cchars[j])) != -1) @@ -247,7 +258,7 @@ fg = term->screenbg[i], bg = term->screenfg[i]; else fg = term->screenfg[i], bg = term->screenbg[i]; - put_char(term, x, term->ypos, term->screen[i], term->cchars[i], fg, bg, term->screenul[i]); + put_char(term, x, term->ypos, term->screen[i], term->cchars[i], fg, bg, term->screenul[i], term->screenbd[i]); term->dirty[SCR(x, term->ypos)] = 1; } } @@ -295,6 +306,7 @@ term->screenfg[i] = term->fg; term->screenbg[i] = term->bg; term->screenul[i] = 0; + term->screenbd[i] = 0; } free (term->cchars[i]); term->cchars[i] = 0; @@ -445,6 +457,7 @@ term->screenfg[i] = term->fg; term->screenbg[i] = term->bg; term->screenul[i] = 0; + term->screenbd[i] = 0; term->cchars[i] = 0; term->dirty[i] = 1; } @@ -518,6 +531,7 @@ term->screenfg[i] = term->fg; term->screenbg[i] = term->bg; term->screenul[i] = 0; + term->screenbd[i] = 0; } free (term->cchars[i]); term->cchars[i] = 0; @@ -551,6 +565,7 @@ term->screenfg[i] = term->fg; term->screenbg[i] = term->bg; term->screenul[i] = 0; + term->screenbd[i] = 0; } free (term->cchars[i]); term->cchars[i] = 0; @@ -593,9 +608,12 @@ term->rev = 1; else if (term->arg[0] == 27) term->rev = 0; + else if (term->arg[0] == 1) + term->bold = 1; else if (term->arg[0] == 0) { term->rev = 0; + term->bold = 0; term->fg = term->def_fg; term->bg = term->def_bg; } @@ -704,6 +722,7 @@ term->screenfg[i] = term->fg; term->screenbg[i] = term->bg; term->screenul[i] = 0; + term->screenbd[i] = 0; } free (term->cchars[i]); term->cchars[i] = NULL; @@ -720,6 +739,7 @@ term->screenfg[i] = f; term->screenbg[i] = b; term->screenul[i] = term->ul; + term->screenbd[i] = term->bold; free (term->cchars[i]); term->cchars[i] = NULL; @@ -730,6 +750,7 @@ term->screenfg[i + j] = f; term->screenbg[i + j] = b; term->screenul[i + j] = 0; + term->screenbd[i + j] = 0; } if (bogl_in_font (term->font, wc)) @@ -757,16 +778,38 @@ if (txp >= 0) { term->xp = txp; -// bogl_text (XPOS (term->xp), YPOS (term->yp), buf, kk, f, -1, term->ul, term->font); +// bogl_text (XPOS (term->xp), YPOS (term->yp), buf, kk, f + (term->bd ? 8 : 0), -1, term->ul, term->font); } else { clear_left (term); -// bogl_text (XPOS (term->xpos), YPOS (term->ypos), buf, kk, f, b, term->ul, term->font); +// bogl_text (XPOS (term->xpos), YPOS (term->ypos), buf, kk, f + (term->bd ? 8 : 0), b, term->ul, term->font); term->xp = term->xpos, term->yp = term->ypos; term->xpos += 1; clear_right (term); } + i = SCR (term->xp, term->yp); + if (bogl_in_font(term->font, wc)) { + if (term->cchars[i]) { + int ccw = wcslen(term->cchars[i]); + wchar_t *newcchars; + + newcchars = realloc(term->cchars[i], (ccw+2) * sizeof(wchar_t)); + if (newcchars) { + term->cchars[i] = newcchars; + term->cchars[i][ccw] = wc; + term->cchars[i][ccw+1] = 0; + } + } + else { + term->cchars[i] = malloc(2 * sizeof(wchar_t)); + if (term->cchars[i]) { + term->cchars[i][0] = wc; + term->cchars[i][1] = 0; + } + } + term->dirty[i] = 1; + } } } @@ -788,7 +831,7 @@ i = SCR(x, y); if (term->screen[i] && term->dirty[i]) { - put_char(term, x, y, term->screen[i], term->cchars[i], term->screenfg[i], term->screenbg[i], term->screenul[i]); + put_char(term, x, y, term->screen[i], term->cchars[i], term->screenfg[i], term->screenbg[i], term->screenul[i], term->screenbd[i]); term->dirty[i] = 0; } } --- bogl-0.1.18.orig/Makefile +++ bogl-0.1.18/Makefile @@ -8,7 +8,8 @@ WARNCFLAGS += -Wall -D_GNU_SOURCE ALLCFLAGS = $(CFLAGS) $(WARNCFLAGS) $(FBCFLAGS) -architecture := $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU) +architecture := $(shell dpkg-architecture -qDEB_BUILD_ARCH_CPU) +os := $(shell uname) LIBOBJECTS = $(LIBBOGLOBJECTS) $(LIBBOMLOBJECTS) $(LIBBOWLOBJECTS) \ $(LIBRSRCOBJECTS) @@ -18,27 +19,35 @@ LIBRSRCOBJECTS = helvB10.o helvB12.o helvR10.o timBI18.o tux75.o SOURCES_DEP = arrow.c bdftobogl.c bogl-cfb.c bogl-cfb.h bogl-cfb8.c \ -bogl-cfb8.h bogl-font.c bogl-font.h bogl-pcfb.c bogl-pcfb.h \ -bogl-tcfb.c bogl-tcfb.h bogl-test.c bogl.c bogl.h boglP.h boml.c \ -boml.h bowl-boxes.c bowl.c bowl.h pngtobogl.c +bogl-cfb8.h bogl-font.c bogl-font.h \ +bogl-test.c bogl.h boglP.h boml.c \ +boml.h bowl.c bowl.h pngtobogl.c + +ifeq ($(os),Linux) + SOURCES_DEP += bogl-pcfb.c bogl-pcfb.h bogl-tcfb.c bogl-tcfb.h bowl-boxes.c bogl.c ifeq (,) FBCFLAGS += -DBOGL_CFB_FB=1 LIBBOGLOBJECTS += bogl-cfb.o bogl-pcfb.o bogl-tcfb.o endif -ifneq (,$(filter i386 arm ia64 x86_64,$(architecture))) +ifneq (,$(filter i386 arm ia64 amd64,$(architecture))) FBCFLAGS += -DBOGL_VGA16_FB=1 LIBBOGLOBJECTS += bogl-vga16.o SOURCES_DEP += bogl-vga16.c bogl-vga16.h endif +endif OBJECTS = $(LIBOBJECTS) bowl-boxes.o GENERATED = helvB10.c helvB12.c helvR10.c timBI18.c tux75.c # libutf8/libutf8_plug.so unifont-reduced.bgf -all: depend $(SHARED_LIB) $(LIB) bterm bdftobogl reduce-font +all: depend +ifeq ($(os),Linux) +all: $(SHARED_LIB) $(LIB) bterm bdftobogl pngtobogl +endif +all: reduce-font %.lo: %.c $(CC) $(ALLCFLAGS) -o $@ -fPIC -c $< @@ -86,7 +95,7 @@ ./bdftobogl $< > $@ pngtobogl: pngtobogl.o - $(CC) $(ALLCFLAGS) -o pngtobogl pngtobogl.o -lgd -lpng -lm + $(CC) $(ALLCFLAGS) -o pngtobogl pngtobogl.o -lgd %.c: %.png pngtobogl ./pngtobogl $< > $@ @@ -109,12 +118,16 @@ endif install: all - install -d $(DESTDIR)/usr/lib $(DESTDIR)/usr/include/bogl $(DESTDIR)/usr/bin + install -d $(DESTDIR)/usr/bin +ifeq ($(os),Linux) + install -d $(DESTDIR)/usr/lib $(DESTDIR)/usr/include/bogl install -m644 $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SHARED_LIB) ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(DEVLINK) ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SONAME) install -m644 $(LIB) $(DESTDIR)/usr/lib/$(LIB) install -m644 *.h $(DESTDIR)/usr/include/bogl - install -m755 bdftobogl mergebdf bterm pngtobogl reduce-font $(DESTDIR)/usr/bin + install -m755 bdftobogl bterm pngtobogl $(DESTDIR)/usr/bin install -d $(DESTDIR)/usr/share/terminfo tic -o$(DESTDIR)/usr/share/terminfo bterm.ti +endif + install -m755 mergebdf reduce-font $(DESTDIR)/usr/bin --- bogl-0.1.18.orig/boml.c +++ bogl-0.1.18/boml.c @@ -30,6 +30,7 @@ #include #include #include "bogl.h" +#include "boglP.h" #include "boml.h" #define M_GPM @@ -127,8 +128,10 @@ #define N_DETECT (N_SERIAL + N_MSBUS + N_PS2 + N_ADB + N_SUN) +#if N_DETECT > 0 /* Detection progress. */ static void inc (void); +#endif static void (*detect_callback) (int); static int detect_count; @@ -323,6 +326,7 @@ #endif } +#if N_DETECT > 0 /* Calls the callback, if any, with a report of the progress of mouse detection in percent, incremented to the next mark (out of N_DETECT marks total). */ @@ -333,6 +337,7 @@ if (detect_callback) detect_callback (100 * detect_count / N_DETECT); } +#endif /* Reads mouse activities from the proper port and update the screen pointer position. */ @@ -614,6 +619,10 @@ fd = open ("/dev/gpmdata", O_RDONLY | O_NONBLOCK); if (fd < 0) return 0; + if (bogl_cloexec (fd) < 0) { + close (fd); + return 0; + } /* Poll the mouse whether or not we could find gpm, in case it starts up later; but keep searching in that case. */ @@ -640,6 +649,10 @@ fd = open("/dev/input/mice", O_RDONLY | O_NONBLOCK); if(fd < 0) return; + if (bogl_cloexec(fd) < 0) { + close(fd); + return; + } add_mouse(T_PS2, fd); } @@ -659,6 +672,10 @@ fd = open ("/dev/psaux", O_RDWR | O_NONBLOCK); if (fd < 0) return; + if (bogl_cloexec (fd) < 0) { + close (fd); + return; + } write (fd, s2, sizeof s2); usleep (30000); @@ -695,6 +712,10 @@ int fd = open ("/dev/inportbm", O_RDONLY | O_NONBLOCK); if (fd < 0) return; + if (bogl_cloexec (fd) < 0) { + close (fd); + return; + } add_mouse (T_MS_BUS, fd); } @@ -707,6 +728,10 @@ int fd = open ("/dev/adbmouse", O_RDONLY | O_NONBLOCK); if (fd < 0) return; + if (bogl_cloexec (fd) < 0) { + close (fd); + return; + } add_mouse (T_ADB, fd); } @@ -721,6 +746,10 @@ int fd = open ("/dev/sunmouse", O_RDONLY | O_NONBLOCK); if (fd < 0) return; + if (bogl_cloexec (fd) < 0) { + close (fd); + return; + } add_mouse (T_SUN, fd); } @@ -978,6 +1007,11 @@ fd = open (port, O_RDWR | O_NONBLOCK); if (fd < 0) return fd; + if (bogl_cloexec (fd) < 0) + { + close (fd); + return -1; + } /* Reset file so it is no longer in non-blocking mode. */ if (fcntl (fd, F_SETFL, 0) < 0) @@ -1278,7 +1312,7 @@ int len; - unsigned char *endfield = strpbrk (++curpos, extension_delims); + unsigned char *endfield = (unsigned char *) strpbrk ((char *) ++curpos, extension_delims); if (!endfield) return 0; @@ -1316,6 +1350,7 @@ default: /* Ignore additional extension fields. */ + break; } curpos += len; @@ -1338,7 +1373,7 @@ checksum -= 0x20 * (curpos - start + 1 - 2); sprintf (hex_checksum, "%.2X", checksum & 0xff); - if (strncmp (hex_checksum, curpos, 2)) + if (strncmp (hex_checksum, (char *) curpos, 2)) return 0; } @@ -1355,16 +1390,16 @@ { char *model; - model = strstr (pnp_id->driver_id, "PNP"); + model = strstr ((char *) pnp_id->driver_id, "PNP"); if (model) model += 3; else - model = pnp_id->product_id; + model = (char *) pnp_id->product_id; if (strncmp (model, "0F", 2)) return -1; } - else if (strcmp (pnp_id->class_name, "MOUSE")) + else if (strcmp ((char *) pnp_id->class_name, "MOUSE")) return -1; /* It's a mouse. Default to Microsoft protocol--most common. */ @@ -1372,8 +1407,8 @@ /* Test for some common mouse types. Send me more! */ { - const char *mfg = pnp_id->manufacturer; - const char *model = pnp_id->product_id; + const char *mfg = (char *) pnp_id->manufacturer; + const char *model = (char *) pnp_id->product_id; if (!strcmp (mfg, "MSH") && !strcmp (model, "0001")) type = T_MS3_SERIAL; --- bogl-0.1.18.orig/bogl-pcfb.c +++ bogl-0.1.18/bogl-pcfb.c @@ -110,7 +110,7 @@ return; bogl_drawing = 1; - dst = (char *) bogl_frame + (y1 * bogl_line_len); + dst = (unsigned char *) bogl_frame + (y1 * bogl_line_len); for (; y1 < y2; y1++) { memset_var (dst, cmap_lookup(c), x1, x2 - x1, bpp); @@ -282,7 +282,7 @@ if (visible) { - char *dst = save; + char *dst = (char *) save; char *src = (char *) bogl_frame + (sx_ofs * bpp / 8) + (y1 * bogl_line_len); @@ -300,7 +300,7 @@ char *dst = (char *) bogl_frame + (sx_ofs * bpp / 8) + (y1 * bogl_line_len); - char *src = save; + char *src = (char *) save; int y; for (y = 0; y < y_count; y++) @@ -330,7 +330,7 @@ unsigned short bg_bits, fg_bits; int x; - dst = (char *) bogl_frame + dst = (unsigned char *) bogl_frame + ((y1 + y) * bogl_line_len); bg_bits = *mask_p ^ *color_p; fg_bits = *mask_p & *color_p; --- bogl-0.1.18.orig/bogl-vga16.c +++ bogl-0.1.18/bogl-vga16.c @@ -563,7 +563,7 @@ { for (plane = 0; plane < 4; plane++) { - volatile char *dst = saved + plane * 16 * 3; + volatile char *dst = (char *) saved + plane * 16 * 3; volatile char *src = bogl_frame + sx_ofs + y1 * bogl_line_len; int y = y_count; @@ -588,7 +588,7 @@ for (plane = 0; plane < 4; plane++) { volatile char *dst = bogl_frame + sx_ofs + y1 * bogl_line_len; - volatile char *src = saved + plane * 16 * 3; + volatile char *src = (char *) saved + plane * 16 * 3; int y = y_count; set_write_planes (1 << plane); --- bogl-0.1.18.orig/bowl.c +++ bogl-0.1.18/bowl.c @@ -324,6 +324,14 @@ } } +static struct widget *callback_widget; + +static void +callback (int percent) +{ + bowl_set_scale (callback_widget, percent); +} + /* Start up BOWL. */ void bowl_init (void) @@ -342,13 +350,6 @@ if (!inited) { - struct widget *w; - - void callback (int percent) - { - bowl_set_scale (w, percent); - } - bowl_init_palette(&pixmap_tux75); bowl_flush (); @@ -356,7 +357,7 @@ { bowl_title (_("Please wait")); bowl_new_text (_("Detecting mice...")); - w = bowl_new_scale (100); + callback_widget = bowl_new_scale (100); bowl_layout (); boml_init (callback); } @@ -457,7 +458,7 @@ bogl_refresh = 0; boml_drawn (0); - bogl_set_palette (0, 16, palette); + bogl_set_palette (0, 16, (const unsigned char (*)[3]) palette); bogl_clear (0, 0, bogl_xres, bogl_yres, wallpaper_color); bogl_put (0, 0, &pixmap_tux75, pix_cmap); bogl_text (55, 0, big_title, (int) strlen (big_title), big_title_color, -1, 0, --- bogl-0.1.18.orig/bogl-bgf.c +++ bogl-0.1.18/bogl-bgf.c @@ -7,6 +7,7 @@ #include #include "bogl.h" +#include "boglP.h" #include "bogl-font.h" struct bogl_font *bogl_mmap_font(char *file) @@ -20,6 +21,9 @@ if (fd == -1) return 0; + if (bogl_cloexec(fd) < 0) + return 0; + if (fstat(fd, &buf)) return 0; --- bogl-0.1.18.orig/reduce-font.1 +++ bogl-0.1.18/reduce-font.1 @@ -0,0 +1,8 @@ +.TH "BOGL" "1" "March 2011" "BOGL" "BOGL" +.SH NAME +reduce-font \- reduce a font to a set of glyphs +.SH SYNOPSIS +\fBreduce-font\fR \fIfont.bdf\fR < \fItext\fR +.SH DESCRIPTION +.B reduce-font +reduces the content of a font, provided the set of text that will have to be displayed with the reduced font. There is no option. --- bogl-0.1.18.orig/bogl-cfb.h +++ bogl-0.1.18/bogl-cfb.h @@ -27,12 +27,12 @@ #include struct bits4 { - unsigned int p0:4 __attribute__ ((packed)); - unsigned int p1:4 __attribute__ ((packed)); + unsigned int p0:4; + unsigned int p1:4; } __attribute__ ((packed)); struct bits24 { - unsigned char bytes[3] __attribute__ ((packed)); + unsigned char bytes[3]; } __attribute__ ((packed)); static inline void @@ -41,16 +41,17 @@ switch (b) { case 32: - /* FIXME: probably has endianness problems */ + /* FIXME: has endianness problems */ ((u_int32_t*)(dst))[off] = c; break; case 24: - /* FIXME: probably also has endianness problems */ + /* FIXME: also has endianness problems */ ((struct bits24*)(dst))[off].bytes[2] = (c >> 16); ((struct bits24*)(dst))[off].bytes[1] = (c >> 8); ((struct bits24*)(dst))[off].bytes[0] = c; break; case 16: + /* FIXME: also has endianness problems */ ((unsigned short*)(dst))[off] = c; break; case 8: @@ -93,7 +94,7 @@ } /* Align to an int boundary */ - while ((unsigned int)dst % sizeof(unsigned int)) + while ((unsigned long)dst % sizeof(unsigned int)) { put_var(dst, 0, c, 24); dst += 3; --- bogl-0.1.18.orig/bterm.c +++ bogl-0.1.18/bterm.c @@ -47,23 +47,44 @@ {0x00, 0x00, 0x00}, /* 0: Black. */ {0xaa, 0x00, 0x00}, /* 1: Red. */ {0x00, 0xaa, 0x00}, /* 2: Green. */ - {0xaa, 0xaa, 0x00}, /* 3: Yellow. */ + {0xaa, 0xaa, 0x00}, /* 3: Brown. */ {0x00, 0x00, 0xaa}, /* 4: Blue. */ {0xaa, 0x00, 0xaa}, /* 5: Magenta. */ {0x00, 0xaa, 0xaa}, /* 6: Cyan. */ - {0xaa, 0xaa, 0xaa}, /* 7: White. */ - {0xff, 0x00, 0x00}, /* 8: Bright red (unused). */ - {0x00, 0x00, 0xff}, /* 9: Bright blue (unused). */ - {0xa9, 0x99, 0x75}, /* A: Tux #1. */ - {0xec, 0xc9, 0x39}, /* B: Tux #2. */ - {0x61, 0x52, 0x39}, /* C: Tux #3. */ - {0xe4, 0xa8, 0x10}, /* D: Tux #4. */ - {0xa0, 0x6d, 0x0c}, /* E: Tux #5. */ - {0x38, 0x2e, 0x1e}, /* F: Tux #6. */ + {0xaa, 0xaa, 0xaa}, /* 7: Light gray. */ + {0x55, 0x55, 0x55}, /* 0: Light Gray. */ + {0xff, 0x00, 0x00}, /* 1: Light Red. */ + {0x00, 0xff, 0x00}, /* 2: Light Green. */ + {0xff, 0xff, 0x00}, /* 3: Yellow. */ + {0x00, 0x00, 0xff}, /* 4: Light Blue. */ + {0xff, 0x00, 0xff}, /* 5: Light Magenta. */ + {0x00, 0xff, 0xff}, /* 6: Light Cyan. */ + {0xff, 0xff, 0xff}, /* 7: White. */ }; static int child_pid = 0; static struct termios ttysave; +static int quit = 0; + +/* Out of memory. Give up. */ +static void out_of_memory (void) +{ + fprintf (stderr, "virtual memory exhausted\n"); + abort (); +} + +/* Allocate AMT bytes of memory and make sure it succeeded. */ +static void *xmalloc (size_t size) +{ + void *p; + + if (size == 0) + return 0; + p = malloc (size); + if (!p) + out_of_memory (); + return p; +} /* This first tries the modern Unix98 way of getting a pty, followed by the * old-fashioned BSD way in case that fails. */ @@ -123,16 +144,28 @@ void sigchld(int sig) { - if (wait(0) == child_pid) { + int status; + if (waitpid(child_pid, &status, WNOHANG) > 0) { child_pid = 0; /* Reset ownership and permissions of ttyfd device? */ tcsetattr(0, TCSAFLUSH, &ttysave); - exit(0); + if (WIFEXITED (status)) + exit(WEXITSTATUS (status)); + if (WIFSIGNALED (status)) + exit(128 + WTERMSIG (status)); + if (WIFSTOPPED (status)) + exit(128 + WSTOPSIG (status)); + exit(status); } signal(SIGCHLD, sigchld); } -void spawn_shell(int ptyfd, int ttyfd, const char *command) +void sigterm(int sig) +{ + quit = 1; +} + +void spawn_shell(int ptyfd, int ttyfd, char * const *command_args) { fflush(stdout); child_pid = fork(); @@ -157,8 +190,8 @@ setgid(getgid()); setuid(getuid()); - execl(command, command, NULL); - exit(1); + execvp(command_args[0], command_args); + exit(127); } void set_window_size(int ttyfd, int x, int y) @@ -211,11 +244,13 @@ int ptyfd, ttyfd; struct bogl_font *font; char *locale = "", *command = NULL; + char **command_args; int i; char o = ' '; int pending = 0; - for (i = 1 ; i < argc ; ++i) + for (i = 1 ; i < argc ; ++i) { + int done = 0; if (argv[i][0] == '-') switch (argv[i][1]) { @@ -224,6 +259,10 @@ o = argv[i][1]; break; + case '-': + done = 1; + break; + default: printf ("unknown option: %c\n", argv[i][1]); } @@ -245,6 +284,10 @@ break; } + if (done) + break; + } + setlocale(LC_CTYPE, locale); if (font_name == NULL) { @@ -278,9 +321,25 @@ exit(1); } - spawn_shell(ptyfd, ttyfd, command == NULL ? "/bin/sh" : command); + if (command) { + command_args = xmalloc(2 * sizeof *command_args); + command_args[0] = command; + command_args[1] = NULL; + } else if (i < argc - 1) { + int j; + command_args = xmalloc((argc - i) * sizeof *command_args); + for (j = i + 1; j < argc; ++j) + command_args[j - (i + 1)] = argv[j]; + command_args[argc - (i + 1)] = NULL; + } else { + command_args = xmalloc(2 * sizeof *command_args); + command_args[0] = "/bin/sh"; + command_args[1] = NULL; + } + spawn_shell(ptyfd, ttyfd, command_args); signal(SIGHUP, reload_font); + signal(SIGTERM, sigterm); ntio = ttysave; ntio.c_lflag &= ~(ECHO|ISIG|ICANON|XCASE); @@ -297,6 +356,9 @@ for (;;) { fd_set fds; int max = 0; + + if (quit) + break; if(pending) { @@ -314,6 +376,10 @@ if (ptyfd > max) max = ptyfd; ret = select(max+1, &fds, NULL, NULL, &tv); + + if (quit) + break; + if (bogl_refresh) { /* Handle VT switching. */ if (bogl_refresh == 2) @@ -353,4 +419,6 @@ } } } + + return 0; } --- bogl-0.1.18.orig/debian/bogl-bterm.files +++ bogl-0.1.18/debian/bogl-bterm.files @@ -0,0 +1 @@ +usr/bin/bterm --- bogl-0.1.18.orig/debian/libbogl-dev.manpages +++ bogl-0.1.18/debian/libbogl-dev.manpages @@ -0,0 +1,4 @@ +bdftobogl.1 +mergebdf.1 +pngtobogl.1 +reduce-font.1 --- bogl-0.1.18.orig/debian/changelog +++ bogl-0.1.18/debian/changelog @@ -0,0 +1,378 @@ +bogl (0.1.18-7) unstable; urgency=low + + [ Samuel Thibault ] + * control: + - Bump Standards-Version to 3.9.3 (no changes). + - Set libbogl0 multi-arch: same + * rules: Move libraries to multi-arch path. + * libbogl0, libbogl-dev: Use multi-arch path. + + [ Sven Joachim ] + * control: + - make libbogl0 pre-depend on multi-arch-support + - Build-depend on recent debhelper to get misc:Pre-Depends. + - Depend and build-depend on ncurses-term (>= 5.9-7) (see #562134). + * bogl-bterm: Do not include /usr/share/terminfo/b/bterm anymore. + * rules: install the bterm terminfo from ncurses-term into bogl-term-udeb. + + -- Samuel Thibault Sat, 25 Feb 2012 17:26:32 +0100 + +bogl (0.1.18-6) unstable; urgency=low + + * Add VCS-Browser and VCS-Git fields. + * control: + - Depend on hardening-check. + - Bump Standards-Version to 3.9.2 (No changes needed). + * rules: + - Set DEB_BUILD_HARDENING=1 to enable hardening. + - Add build-{arch,indep}. + - Build udeb separately with -Os (Closes: Bug#314353). + + -- Samuel Thibault Sun, 05 Feb 2012 03:02:06 +0100 + +bogl (0.1.18-5) unstable; urgency=low + + * New maintainer (Closes: #385919). + * Fix compilation warnings. + * Drop -lpng and -lm, they are actually not needed. + * Add manpages for mergebdf, pngtobogl, reduce-font. + * Remove debian/libbogl0.postinst. + * Bump Standards-Version to 3.9.1 (no change needed). + * Fix non-Linux build (Closes: #589987). + + -- Samuel Thibault Sun, 20 Mar 2011 19:03:58 +0100 + +bogl (0.1.18-4) unstable; urgency=low + + * QA upload. + * If a "--" argument is encountered on bterm's command line, terminate + option processing there and accept arguments after the command name. + Thanks to Colin Watson for the patch. + Closes: #528783. + * Drop gratuitous hardcoded ldconfig call in libbogl0 postinst. + * Drop redundant debian/foo.dirs. + * Update standards-version to 3.8.4, no changes required. + + -- Steve Langasek Tue, 22 Jun 2010 00:06:57 +0000 + +bogl (0.1.18-3.1) unstable; urgency=low + + * Non-maintainer upload. + * Improve packaging of the udeb by using current debhelper functionality. + Ensures correct versioned dependency on libc. Closes: #564488. + * Drop the 'Provides: editor' for bogl-bterm-udeb. It's unused and most + likely incorrect. + * Avoid executable stack. Patch taken from Fedora. Closes: #539775. + + -- Frans Pop Sun, 10 Jan 2010 11:33:52 +0100 + +bogl (0.1.18-3) unstable; urgency=low + + * QA upload. + * Close-on-exec internal fds. (Closes: #512657). + + Thanks to Colin Watson for the patch. + * Support enter_bold_mode. (Closes: #486933). + + Thanks to Samuel Thibault for the patch. + * Make SIGCHLD handler more robust. (Closes: #329164). + + Thanks to Miloslav Trmac for the patch. + * Display combined chars. (Closes: #279984). + + Thanks to Eugeniy Meshcheryakov for the patch. + * Make clean not ignore errors. + * Replace pwd with $(CURDIR) in rules. + * Replace ${Source-Version} with ${binary:Version} in Depends. + * Add ${misc:Depends} for debhelper package. + * Add appropriate copyright holders to debian/copyright. + * Bump debhelper build-dep 5. + + Move DH_COMPAT from rules to debian/compat and set to 5. + * Bump Standards Version to 3.8.1. + + -- Barry deFreese Thu, 23 Apr 2009 11:41:11 -0400 + +bogl (0.1.18-2) unstable; urgency=low + + * Orphan package. + * Acknowledge large collection of NMUs. + + -- Daniel Jacobowitz Sat, 08 Mar 2008 10:16:01 -0500 + +bogl (0.1.18-1.6) unstable; urgency=high + + * Non-maintainer upload. + * High-urgency upload for RC bugfix. + * Drop versioned build-dependency on linux-kernel-headers, which is + build-essential in sarge and etch at the required version, and a virtual + package in lenny and above. Closes: #433273. + * Also build-depend on libpng12-dev instead of libpng3-dev. + * Add a SIGTERM signal handler which allows for a graceful exit, + restoring the vt state; thanks to Matt Zimmerman . + Closes: #379708. + + -- Steve Langasek Sat, 08 Mar 2008 11:03:28 +0000 + +bogl (0.1.18-1.5) unstable; urgency=low + + * NMU + * Fix FTBFS on some arches due to kernel-headers no longer defining + PAGE_MASK on all arches. Closes: #393023 + + -- Joey Hess Fri, 20 Oct 2006 16:08:45 -0400 + +bogl (0.1.18-1.4) unstable; urgency=low + + * NMU + * Fix arch fix or amd64. + + -- Joey Hess Sun, 25 Sep 2005 02:08:55 +0200 + +bogl (0.1.18-1.3) unstable; urgency=low + + * NMU + * Fix Makefile to call dpkg-architecture in a way that will work with the + new version, re-enables support for VGA16_FB. + + -- Joey Hess Thu, 22 Sep 2005 10:35:08 +0200 + +bogl (0.1.18-1.2) unstable; urgency=HIGH + + * NMU + * Fix FTBFS with gcc 4.0. Closes: #284741 + + -- Joey Hess Wed, 21 Sep 2005 19:08:20 +0200 + +bogl (0.1.18-1.1) unstable; urgency=low + + * Non maintainer upload in favour of debian-boot. + * Return exit code from process and update manpage. (closes: #258650) + * Return 127 on exec errors. + + -- Bastian Blank Fri, 23 Jul 2004 17:48:55 +0200 + +bogl (0.1.18-1) unstable; urgency=low + + * Work around 2.6.x vga16fb bugs (Closes: #245207). + * PTY fixes from Colin Watson (Closes: #244771). + + -- Daniel Jacobowitz Wed, 5 May 2004 22:44:29 -0400 + +bogl (0.1.17-1) unstable; urgency=low + + * Fix a typo which broke bdftobogl on LP64 targets like ia64. + + -- Daniel Jacobowitz Sun, 7 Mar 2004 23:41:12 -0500 + +bogl (0.1.16-1) unstable; urgency=low + + * Add padding to font names in BGF files (Closes: #225543, #232720). + + -- Daniel Jacobowitz Tue, 24 Feb 2004 15:56:22 -0500 + +bogl (0.1.15-1) unstable; urgency=low + + * Acknowledge Petter's NMU (Closes: #221538). + * Add a patch from Matt Kraai to reload fonts on SIGHUP (Closes: #219333). + + -- Daniel Jacobowitz Tue, 20 Jan 2004 21:14:51 -0500 + +bogl (0.1.14-1.1) unstable; urgency=high + + * Non maintainer upload. + * Remove md5sum file from udeb. It is only wasting space. Patch + from Matt Kraai. (Closes: #221538) + * Urgency high to try to get this package into testing in time for + beta2 of debian-installer. + + -- Petter Reinholdtsen Sat, 10 Jan 2004 11:09:50 +0100 + +bogl (0.1.14-1) unstable; urgency=low + + * New "upstream" release. + - Fix the speed optimizations to refresh after VT switch + (Closes: #215160). + - Enable faster scrolling code, with fixes. + - Fix clear-to-end-of-screen escape. + + -- Daniel Jacobowitz Tue, 4 Nov 2003 23:39:07 -0500 + +bogl (0.1.13-1) unstable; urgency=low + + * New "upstream" release. + - Speed optimizations for bterm, indirectly from Alan Cox. + + -- Daniel Jacobowitz Sun, 5 Oct 2003 14:55:54 -0400 + +bogl (0.1.12-2) unstable; urgency=low + + * Add bogl-bterm-udeb package (Closes: #185046). + + -- Daniel Jacobowitz Mon, 19 May 2003 11:14:10 -0400 + +bogl (0.1.12-1) unstable; urgency=low + + * New "upstream" release. + - Add a workaround for x86-64, from Matt Wilson . + * Update section for libbogl-dev. + + -- Daniel Jacobowitz Tue, 15 Apr 2003 20:04:19 -0400 + +bogl (0.1.11-1) unstable; urgency=low + + * New "upstream" release. + - Support devfs (Closes: #182176). + - Enable vga16 mode on ARM (See bug #182915). + + -- Daniel Jacobowitz Sun, 23 Mar 2003 14:33:58 -0500 + +bogl (0.1.10-4) unstable; urgency=low + + * Update build dependencies to use libgd2 instead of libgd1 + (Closes: #180220). + * Remove use of dh_undocumented. + + -- Daniel Jacobowitz Sat, 8 Feb 2003 12:40:57 -0500 + +bogl (0.1.10-3) unstable; urgency=low + + * Change build depends to libgd-noxpm-dev | libgd-xpm-dev to avoid the + GIF version (Closes: #167195). + + -- Daniel Jacobowitz Wed, 20 Nov 2002 10:12:29 -0500 + +bogl (0.1.10-2) unstable; urgency=low + + * Build depend on libpng3-dev instead of libpng2-dev (Closes: #159045). + + -- Daniel Jacobowitz Sun, 1 Sep 2002 21:35:16 -0400 + +bogl (0.1.10-1) unstable; urgency=low + + * New "upstream" release. + - Better handling for mbrtowc errors (Closes: #140809). + - Workaround for virgefb (Closes: #141547). + - bdftobogl manpage (Closes: #141788, #141796). + + -- Daniel Jacobowitz Sat, 17 Aug 2002 16:59:35 -0400 + +bogl (0.1.9-2) unstable; urgency=low + + * Add a manpage for bterm (Closes: #84208, #139713). + + -- Daniel Jacobowitz Sun, 31 Mar 2002 15:43:27 -0500 + +bogl (0.1.9-1) unstable; urgency=low + + * New "upstream" release. + - Several new terminfo capabilities, including scrolling up. + - "less" works under bterm now. + - Still one visible bug in mutt (if you are looking at a long message + and hit 'v', the screen may not be properly cleared when the menu + displays). Probably we advertise some terminfo capability we + don't actually support. + * Support frame buffers whose start address is not page-aligned + (Closes: #134014). + * Add acsc, smacs, and rmacs capabilities to bterm. They only work + with UTF-8 etc. locales for the moment. + + -- Daniel Jacobowitz Mon, 18 Mar 2002 01:47:49 -0500 + +bogl (0.1.8-1) unstable; urgency=low + + * New "upstream" release - the "mutt almost works in bterm now" release. + * Set controlling TTY for processes run in bterm (Closes: #121186). + * Use u_int32_t instead of unsigned long, and fix pointer sizeofs. + * Draw the cursor and screen refresh correctly (Closes: #119360). + + -- Daniel Jacobowitz Sat, 1 Dec 2001 13:05:14 -0500 + +bogl (0.1.7-1) unstable; urgency=low + + * New "upstream" release. + * Add __attribute__ ((packed)) to some structures for ARM + (Closes: #119030). + * Better error handling in reduce-font, from Philip Blundell + (Closes: #119110). + + -- Daniel Jacobowitz Sun, 11 Nov 2001 11:21:43 -0500 + +bogl (0.1.6-2) unstable; urgency=low + + * Fix sections for libbogl0 and bogl-bterm. + + -- Daniel Jacobowitz Thu, 28 Jun 2001 12:19:34 -0700 + +bogl (0.1.6-1) unstable; urgency=low + + * New "upstream" release. That was quick. + * Include in bowl-boxes.c so that va_* macros expand + properly. + * Install reduce-font for boot-floppies. + * Finish killing libutf8. + + -- Daniel Jacobowitz Sun, 27 May 2001 18:15:08 -0700 + +bogl (0.1.5-2) unstable; urgency=low + + * Oops, add ${shlibs:Depends} to libbogl-dev (Closes: #84210). + + -- Daniel Jacobowitz Sun, 27 May 2001 17:55:16 -0700 + +bogl (0.1.5-1) unstable; urgency=low + + * New "upstream" release, fixing bterm's utf8 support. + * Install bterm terminfo description. + * Stop calling dh_testversion, we already had the right Build-Depends. + + -- Daniel Jacobowitz Sun, 27 May 2001 17:16:20 -0700 + +bogl (0.1.4-1) unstable; urgency=low + + * New "upstream" release (closes: #87034). + * Include libbogl.so link in libbogl-dev. + + -- Daniel Jacobowitz Sat, 24 Feb 2001 16:16:14 -0500 + +bogl (0.1.3-1) unstable; urgency=low + + * New "upstream" release, with fixed multiselects and a mouse bug. + + -- Daniel Jacobowitz Tue, 26 Dec 2000 23:26:05 -0500 + +bogl (0.1.2-2) unstable; urgency=low + + * Oops, also build depend on libpng2-dev. + + -- Daniel Jacobowitz Mon, 25 Dec 2000 22:38:22 -0500 + +bogl (0.1.2-1) unstable; urgency=low + + * New "upstream" release, fixing mouse support a bit. + + -- Daniel Jacobowitz Mon, 25 Dec 2000 22:21:31 -0500 + +bogl (0.1.1-1) unstable; urgency=low + + * New "upstream" release (i.e. code changes, not just packaging changes). + * Build depend on libgd-dev (for pngtobogl). + + -- Daniel Jacobowitz Mon, 25 Dec 2000 02:56:22 -0500 + +bogl (0.1-2) unstable; urgency=low + + * Remove ".depend" when building the package, oops. + + -- Daniel Jacobowitz Wed, 20 Dec 2000 14:46:22 -0500 + +bogl (0.1-1) unstable; urgency=low + + * Initial Release. + * Include the utf8 library plugin, since it seems to still be necessary + (even with glibc 2.2 installed, although glibc 2.2 should have the + needed functions...). + * Clean up the makefiles for building without the rest of the boot + floppies. + + -- Daniel Jacobowitz Wed, 20 Dec 2000 13:29:38 -0500 + +Local variables: +mode: debian-changelog +add-log-mailing-address "dan@debian.org" +End: --- bogl-0.1.18.orig/debian/rules +++ bogl-0.1.18/debian/rules @@ -0,0 +1,92 @@ +#!/usr/bin/make -f + +# Based on debhelper sample rules file by Joey Hess + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# shared library versions, option 1 +version=2.0.5 +major=2 +# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so +#version=`ls src/.libs/lib*.so.* | \ +# awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'` +#major=`ls src/.libs/lib*.so.* | \ +# awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'` + +DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS) +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) + +build: build-arch +build-indep: +build-arch: build-stamp +build-stamp: + dh_testdir + + mkdir -p build-udeb + (cd build-udeb ; ln -sf ../* .) + rm -f build-udeb/Makefile + sed -e 's/-O2/-Os/' < Makefile > build-udeb/Makefile + + $(MAKE) -C build-udeb depend + $(MAKE) -C build-udeb + + mkdir -p build + (cd build ; ln -sf ../* .) + + $(MAKE) -C build depend + DEB_BUILD_HARDENING=1 $(MAKE) -C build + + touch build-stamp + +clean: + dh_testdir + rm -f build-stamp configure-stamp + + rm -fr build build-udeb + $(MAKE) clean + + dh_clean + +# Build architecture-independent files here. +binary-indep: + @echo No architecture-independent packages. + +# Build architecture-dependent files here. +binary-arch: build + dh_testdir + dh_testroot + + $(MAKE) -C build install DESTDIR=$(CURDIR)/debian/tmp + mkdir $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH) + mv $(CURDIR)/debian/tmp/usr/lib/lib* $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH) + + dh_movefiles + +ifeq ($(DEB_HOST_ARCH_OS), linux) + install -d debian/bogl-bterm-udeb/usr/bin + install -m 755 build-udeb/bterm debian/bogl-bterm-udeb/usr/bin/bterm + install -d debian/bogl-bterm-udeb/usr/share/terminfo/b + install -m 644 /usr/share/terminfo/b/bterm debian/bogl-bterm-udeb/usr/share/terminfo/b/bterm +endif + + dh_installdocs + dh_installexamples + dh_installman + dh_installinfo + dh_installchangelogs + dh_link + dh_strip + dh_compress + dh_fixperms + + dh_makeshlibs + dh_installdeb + dh_shlibdeps + + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build build-indep build-arch clean binary-indep binary-arch binary configure --- bogl-0.1.18.orig/debian/libbogl-dev.files.kfreebsd-amd64 +++ bogl-0.1.18/debian/libbogl-dev.files.kfreebsd-amd64 @@ -0,0 +1,2 @@ +usr/bin/mergebdf +usr/bin/reduce-font --- bogl-0.1.18.orig/debian/libbogl0.files +++ bogl-0.1.18/debian/libbogl0.files @@ -0,0 +1,2 @@ +usr/lib/*/libbogl.so.0.1 +usr/lib/*/libbogl.so.0 --- bogl-0.1.18.orig/debian/control +++ bogl-0.1.18/debian/control @@ -0,0 +1,58 @@ +Source: bogl +Section: devel +Priority: optional +Maintainer: Samuel Thibault +Build-Depends: debhelper (>= 8.1.3), libgd2-noxpm-dev | libgd2-xpm-dev, hardening-wrapper, ncurses-term (>= 5.9-7) +Standards-Version: 3.9.3 +Vcs-Browser: http://git.debian.org/?p=collab-maint/bogl.git +Vcs-Git: git://git.debian.org/collab-maint/bogl.git + +Package: libbogl-dev +Section: libdevel +Architecture: any +Depends: libbogl0 (= ${binary:Version}) [linux-any], libc6-dev, ${shlibs:Depends}, ${misc:Depends} +Description: Ben's Own Graphics Library - development files + Ben's Own Graphics Library is a small framebuffer library, + including basic widgets, support for text in multiple + languages, and mouse handling. + . + This package contains the BOGL include files, static library, + and development documentation. + +Package: libbogl0 +Section: libs +Architecture: linux-any +Multi-Arch: same +Pre-Depends: ${misc:Pre-Depends} +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Ben's Own Graphics Library - shared library + Ben's Own Graphics Library is a small framebuffer library, + including basic widgets, support for text in multiple + languages, and mouse handling. + . + This package contains the shared library version of BOGL. + +Package: bogl-bterm +Section: utils +Architecture: linux-any +Depends: ${shlibs:Depends}, ${misc:Depends}, ncurses-term (>= 5.9-7) +Description: Ben's Own Graphics Library - graphical terminal + Ben's Own Graphics Library is a small framebuffer library, + including basic widgets, support for text in multiple + languages, and mouse handling. + . + This package contains bterm, a UTF-enabled framebuffer terminal. + +Package: bogl-bterm-udeb +XC-Package-Type: udeb +Section: debian-installer +Architecture: linux-any +Priority: extra +Depends: ${shlibs:Depends} +Description: Ben's Own Graphics Library - graphical terminal + Ben's Own Graphics Library is a small framebuffer library, + including basic widgets, support for text in multiple + languages, and mouse handling. + . + This package contains bterm, a UTF-enabled framebuffer terminal, + for use in debian-installer. --- bogl-0.1.18.orig/debian/libbogl-dev.files +++ bogl-0.1.18/debian/libbogl-dev.files @@ -0,0 +1,7 @@ +usr/bin/bdftobogl +usr/bin/pngtobogl +usr/bin/mergebdf +usr/bin/reduce-font +usr/lib/*/libbogl.a +usr/lib/*/libbogl.so +usr/include/bogl/* --- bogl-0.1.18.orig/debian/libbogl0.dirs +++ bogl-0.1.18/debian/libbogl0.dirs @@ -0,0 +1 @@ +usr/lib --- bogl-0.1.18.orig/debian/copyright +++ bogl-0.1.18/debian/copyright @@ -0,0 +1,15 @@ +BOGL was written by Ben Pfaff , and packaged by Daniel +Jacobowitz . + +Copyright: + Copyright (C) 1991 Free Software Foundation, Inc. + Copyright (C) 2002 Red Hat Inc + Copyright (C) 1984-1989, 1994 Adobe Systems Incorporated. + Copyright (C) 1988, 1994 Digital Equipment Corporation. + +License: + +BOGL is distributed under the terms of the GNU General Public License, +version 2 (or later). The full text of the GPL may be found in +/usr/share/common-licenses/GPL-2 on a Debian system, or obtained from the Free +Software Foundation. --- bogl-0.1.18.orig/debian/compat +++ bogl-0.1.18/debian/compat @@ -0,0 +1 @@ +5 --- bogl-0.1.18.orig/debian/TODO +++ bogl-0.1.18/debian/TODO @@ -0,0 +1,13 @@ +Clean up makefiles +Try on Sparc - Ben Collins said a simple fix was needed +Figure out why we still need libutf8 +Find out why bowl.lo causes a bad relocation to abort(). + [Happens on PPC only] +Figure out which headers need to be installed. +Mention font licenses in copyright file. +Include the *.bdf files somewhere in the packages. + +widgets: + disabled buttons + radio buttons + improve multiselects - unintuitive - maybe enlarge the checkboxes? --- bogl-0.1.18.orig/debian/bogl-bterm.manpages +++ bogl-0.1.18/debian/bogl-bterm.manpages @@ -0,0 +1 @@ +bterm.1 --- bogl-0.1.18.orig/debian/libbogl-dev.files.hurd-i386 +++ bogl-0.1.18/debian/libbogl-dev.files.hurd-i386 @@ -0,0 +1,2 @@ +usr/bin/mergebdf +usr/bin/reduce-font --- bogl-0.1.18.orig/debian/libbogl-dev.dirs +++ bogl-0.1.18/debian/libbogl-dev.dirs @@ -0,0 +1 @@ +usr/include/bogl --- bogl-0.1.18.orig/debian/libbogl-dev.files.kfreebsd-i386 +++ bogl-0.1.18/debian/libbogl-dev.files.kfreebsd-i386 @@ -0,0 +1,2 @@ +usr/bin/mergebdf +usr/bin/reduce-font