* update aalib to 1.4rc5-18
This commit is contained in:
parent
b48ceb37ee
commit
76a96c101a
@ -5,30 +5,69 @@
|
||||
pkgname=aalib
|
||||
pkgver=1.4rc5
|
||||
_pkgver=1.4.0
|
||||
pkgrel=17
|
||||
pkgrel=18
|
||||
pkgdesc='ASCII art graphic library'
|
||||
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
||||
url='https://aa-project.sourceforge.net/aalib/'
|
||||
license=('LGPL')
|
||||
license=('LGPL-2.0-or-later')
|
||||
depends=('glibc' 'gpm' 'libx11' 'ncurses' 'slang')
|
||||
optdepends=('xorg-fonts-misc: x11 driver'
|
||||
'xorg-mkfontscale: x11 driver')
|
||||
source=("https://downloads.sourceforge.net/aa-project/$pkgname-$pkgver.tar.gz"
|
||||
'aclocal-fixes.patch'
|
||||
'aalib.m4.patch')
|
||||
'aalib-m4.patch'
|
||||
'aalib-c99.patch'
|
||||
'aalib-free-offset-pointer.patch'
|
||||
'aalib-aalinuxkbd-return.patch'
|
||||
'aalib-key-down-OOB.patch'
|
||||
'aalib-opaque-ncurses-fix.patch'
|
||||
'aalib-fix-aarender.patch'
|
||||
'aalib-mouse.patch')
|
||||
sha256sums=('fbddda9230cf6ee2a4f5706b4b11e2190ae45f5eda1f0409dc4f99b35e0a70ee'
|
||||
'f40742677a3e0d58c99a09da7574635411156586acd22867e71dd46c88088bce'
|
||||
'0202545881ec34bd637c04b5896b9b3093609530cc4f85e1d5ffe9a3136d9483')
|
||||
'0202545881ec34bd637c04b5896b9b3093609530cc4f85e1d5ffe9a3136d9483'
|
||||
'a1b61cfc717a23bd4976f03c80b87a1de641f44c26c8133e248006bcbf6c87ea'
|
||||
'f6c63a145f9844d6b9e2dc96fa35616ef86278e8888b1f2fe5ce1d2c6f93f128'
|
||||
'28f2e4148b6987974631e2a2d628422ef9de5ba9ff011a84b79255ccbf8d023a'
|
||||
'1fbba4b022e2d14981e6595d2eecc8f97f979b25acee4e6871bb415a5bf5da89'
|
||||
'da45bd012e0a966ab57158808642441c9c328c9e01a2780e5429f60621f685b5'
|
||||
'6695a057a21da1c7a5d0a578be76a0d0f052a33bef77e7767ccba76427dc3ea5'
|
||||
'24be60c5faa3629983d42c979b3bc6f8c2896823417dbf510388683974199a49')
|
||||
|
||||
prepare() {
|
||||
cd $pkgname-$_pkgver
|
||||
|
||||
# Fix warning about underquoted definition of AM_PATH_AALIB
|
||||
# https://sourceforge.net/p/aa-project/patches/5/
|
||||
# https://bugs.archlinux.org/task/78787
|
||||
patch -Np0 -i ../aclocal-fixes.patch
|
||||
|
||||
# Fix --with-aalib-prefix argument
|
||||
# https://sourceforge.net/p/aa-project/patches/9/
|
||||
# https://bugs.archlinux.org/task/53482
|
||||
patch -Np0 -i ../aalib.m4.patch
|
||||
patch -Np0 -i ../aalib-m4.patch
|
||||
|
||||
# Fix builtin-declaration-mismatch compiler warnings
|
||||
# https://sourceforge.net/p/aa-project/bugs/10/
|
||||
patch -Np1 -i ../aalib-c99.patch
|
||||
|
||||
# Fix free-nonheap-object compiler warning
|
||||
patch -Np1 -i ../aalib-free-offset-pointer.patch
|
||||
|
||||
# Fix aggressive-loop-optimizations compiler warning
|
||||
patch -Np1 -i ../aalib-key-down-OOB.patch
|
||||
|
||||
# Fix 'return' with no value compiler warning
|
||||
patch -Np1 -i ../aalib-aalinuxkbd-return.patch
|
||||
|
||||
# Fix build for ncurses built with opaque-curses option
|
||||
patch -Np1 -i ../aalib-opaque-ncurses-fix.patch
|
||||
|
||||
# Fix rendering with custom aspect ratio
|
||||
patch -Np1 -i ../aalib-fix-aarender.patch
|
||||
|
||||
# Fix typo for KEY_MOUSE condition
|
||||
patch -Np1 -i ../aalib-mouse.patch
|
||||
|
||||
autoreconf -fi
|
||||
}
|
||||
|
12
aalib/aalib-aalinuxkbd-return.patch
Normal file
12
aalib/aalib-aalinuxkbd-return.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -Nur aalib-1.4.0-orig/src/aalinuxkbd.c aalib-1.4.0/src/aalinuxkbd.c
|
||||
--- aalib-1.4.0-orig/src/aalinuxkbd.c 2001-04-26 16:37:31.000000000 +0200
|
||||
+++ aalib-1.4.0/src/aalinuxkbd.c 2005-07-01 22:57:59.000000000 +0200
|
||||
@@ -200,7 +200,7 @@
|
||||
static int rawmode_init(void)
|
||||
{
|
||||
if (!closed)
|
||||
- return;
|
||||
+ return 1;
|
||||
mypid = getpid();
|
||||
if (tty_fd == -1) {
|
||||
tty_fd = fileno(stdin);
|
106
aalib/aalib-c99.patch
Normal file
106
aalib/aalib-c99.patch
Normal file
@ -0,0 +1,106 @@
|
||||
Add additional system header #include directives for more
|
||||
function prototypes. This avoids implicit function declarations
|
||||
and build failures with future compilers.
|
||||
|
||||
diff --git a/src/aafire.c b/src/aafire.c
|
||||
index 4f36149aa84fba57..a59b5c5fa58e085b 100644
|
||||
--- a/src/aafire.c
|
||||
+++ b/src/aafire.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
#include "aalib.h"
|
||||
|
||||
#define XSIZ aa_imgwidth(context)
|
||||
diff --git a/src/aainfo.c b/src/aainfo.c
|
||||
index d3f6d50f34590638..f4250ee37ae46134 100644
|
||||
--- a/src/aainfo.c
|
||||
+++ b/src/aainfo.c
|
||||
@@ -1,3 +1,4 @@
|
||||
+#include <stdlib.h>
|
||||
|
||||
#include "aalib.h"
|
||||
#include "aaint.h"
|
||||
diff --git a/src/aakbdreg.c b/src/aakbdreg.c
|
||||
index def65fe25646d75a..682616313c1b6ebd 100644
|
||||
--- a/src/aakbdreg.c
|
||||
+++ b/src/aakbdreg.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <malloc.h>
|
||||
+#include <string.h>
|
||||
#include "config.h"
|
||||
#include "aalib.h"
|
||||
#include "aaint.h"
|
||||
diff --git a/src/aalib.c b/src/aalib.c
|
||||
index 11fecc8fe8ef6b59..1ef12c0dfa9026a4 100644
|
||||
--- a/src/aalib.c
|
||||
+++ b/src/aalib.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <malloc.h>
|
||||
#include "aalib.h"
|
||||
diff --git a/src/aalinuxkbd.c b/src/aalinuxkbd.c
|
||||
index c7f388abfe9e8c7f..ea988154518dfc8e 100644
|
||||
--- a/src/aalinuxkbd.c
|
||||
+++ b/src/aalinuxkbd.c
|
||||
@@ -8,6 +8,7 @@
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
+#include <stdlib.h>
|
||||
#ifdef LINUX_DRIVER
|
||||
#include <sys/time.h>
|
||||
#include <sys/types.h>
|
||||
diff --git a/src/aamoureg.c b/src/aamoureg.c
|
||||
index 03808289eb59b928..6d807416ae0d3dc2 100644
|
||||
--- a/src/aamoureg.c
|
||||
+++ b/src/aamoureg.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <malloc.h>
|
||||
+#include <string.h>
|
||||
#include "config.h"
|
||||
#include "aalib.h"
|
||||
#include "aaint.h"
|
||||
diff --git a/src/aaregist.c b/src/aaregist.c
|
||||
index 54abec0b9797533a..768b8ce29e286b00 100644
|
||||
--- a/src/aaregist.c
|
||||
+++ b/src/aaregist.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#include <malloc.h>
|
||||
+#include <string.h>
|
||||
#include "config.h"
|
||||
#include "aalib.h"
|
||||
#include "aaint.h"
|
||||
diff --git a/src/aasavefont.c b/src/aasavefont.c
|
||||
index b00e1e6d7f181952..864ba225d5ef626c 100644
|
||||
--- a/src/aasavefont.c
|
||||
+++ b/src/aasavefont.c
|
||||
@@ -1,3 +1,4 @@
|
||||
+#include <stdlib.h>
|
||||
#include "aalib.h"
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
diff --git a/src/aatest.c b/src/aatest.c
|
||||
index 9816f5d855134894..89933cfba6344270 100644
|
||||
--- a/src/aatest.c
|
||||
+++ b/src/aatest.c
|
||||
@@ -1,3 +1,5 @@
|
||||
+#include <stdlib.h>
|
||||
+#include <string.h>
|
||||
#include "aalib.h"
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
diff --git a/src/aaxkbd.c b/src/aaxkbd.c
|
||||
index f16afc63bb565512..44b91458b4bef3bc 100644
|
||||
--- a/src/aaxkbd.c
|
||||
+++ b/src/aaxkbd.c
|
||||
@@ -7,6 +7,7 @@
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/keysymdef.h>
|
||||
#include <X11/keysym.h>
|
||||
+#include <X11/Xutil.h>
|
||||
#include "aalib.h"
|
||||
#include "aaint.h"
|
||||
#include "aaxint.h"
|
34
aalib/aalib-fix-aarender.patch
Normal file
34
aalib/aalib-fix-aarender.patch
Normal file
@ -0,0 +1,34 @@
|
||||
This bug can be seen very clearly with e.g. mplayer -vo aa -monitoraspect 3
|
||||
in which case a big part of the picture is missing or there is even completely
|
||||
black output.
|
||||
|
||||
The reason for this is, when drawing only a part of the picture via aarender()
|
||||
the first X coordinate is used for the loop count, but it is not applied to the
|
||||
destination and source image index, thus instead of (re)drawing the middle part
|
||||
of the image, it draws always the left part.
|
||||
|
||||
Actual Results:
|
||||
only the left part of the image is draw (depending on the video, only the left
|
||||
black bar might be draw, so you will see nothing at all - if so use a slightly
|
||||
smaller value for -monitoraspect).
|
||||
|
||||
Expected Results:
|
||||
All of the image should be drawn, and -monitoraspect should only squeeze the
|
||||
image, not cause part of it to miss.
|
||||
|
||||
Gentoo-bug: http://bugs.gentoo.org/id=214142
|
||||
Reported-by: Reimar Döffinger
|
||||
Fixed-by: Reimar Döffinger
|
||||
--- a/src/aarender.c.orig 2008-03-18 23:55:32.000000000 +0100
|
||||
+++ b/src/aarender.c 2008-03-18 23:55:50.000000000 +0100
|
||||
@@ -94,8 +94,8 @@
|
||||
gamma = randomval / 2;
|
||||
mval = (c->parameters[c->filltable[255]].p[4]);
|
||||
for (y = y1; y < y2; y++) {
|
||||
- pos = 2 * y * wi;
|
||||
- pos1 = y * aa_scrwidth(c);
|
||||
+ pos = 2 * (y * wi + x1);
|
||||
+ pos1 = y * aa_scrwidth(c) + x1;
|
||||
esum = 0;
|
||||
for (x = x1; x < x2; x++) {
|
||||
i1 = table[((((int) c->imagebuffer[pos])))];
|
14
aalib/aalib-free-offset-pointer.patch
Normal file
14
aalib/aalib-free-offset-pointer.patch
Normal file
@ -0,0 +1,14 @@
|
||||
--- a/src/aarender.c
|
||||
+++ b/src/aarender.c
|
||||
@@ -63,10 +63,10 @@ void aa_renderpalette(aa_context * c, __
|
||||
errors[0] = calloc(1, (x2 + 5) * sizeof(int));
|
||||
if (errors[0] == NULL)
|
||||
dither = AA_ERRORDISTRIB;
|
||||
- errors[0] += 3;
|
||||
errors[1] = calloc(1, (x2 + 5) * sizeof(int));
|
||||
if (errors[1] == NULL)
|
||||
free(errors[0]), dither = AA_ERRORDISTRIB;
|
||||
+ errors[0] += 3;
|
||||
errors[1] += 3;
|
||||
cur = 0;
|
||||
}
|
23
aalib/aalib-key-down-OOB.patch
Normal file
23
aalib/aalib-key-down-OOB.patch
Normal file
@ -0,0 +1,23 @@
|
||||
diff -Naur a/src/aalinuxkbd.c b/src/aalinuxkbd.c
|
||||
--- a/src/aalinuxkbd.c 2016-12-19 12:40:26.660039735 +0100
|
||||
+++ b/src/aalinuxkbd.c 2016-12-19 12:42:21.692045971 +0100
|
||||
@@ -114,6 +114,7 @@
|
||||
static int vtswitch_allowed;
|
||||
|
||||
static char key_down[128];
|
||||
+static size_t key_down_size = 128;
|
||||
static int closed = 1;
|
||||
static int mypid;
|
||||
|
||||
@@ -165,10 +166,7 @@
|
||||
|
||||
static void blank_key_down(void)
|
||||
{
|
||||
- int f;
|
||||
-
|
||||
- for (f = 0; f < NR_KEYS; f++)
|
||||
- key_down[f] = 0;
|
||||
+ memset(key_down, 0, key_down_size);
|
||||
}
|
||||
|
||||
|
25
aalib/aalib-m4.patch
Normal file
25
aalib/aalib-m4.patch
Normal file
@ -0,0 +1,25 @@
|
||||
Index: aalib.m4
|
||||
===================================================================
|
||||
RCS file: /cvsroot/aa-project/aalib/aalib.m4,v
|
||||
retrieving revision 1.2
|
||||
diff -u -r1.2 aalib.m4
|
||||
--- aalib.m4 3 May 2001 14:56:44 -0000 1.2
|
||||
+++ aalib.m4 28 Mar 2017 08:36:42 -0000
|
||||
@@ -40,14 +40,14 @@
|
||||
if test "$AALIB_CONFIG" = "no" ; then
|
||||
no_aalib=yes
|
||||
else
|
||||
- AALIB_CFLAGS=`$AALIB_CONFIG $aalibconf_args --cflags`
|
||||
- AALIB_LIBS=`$AALIB_CONFIG $aalibconf_args --libs`
|
||||
+ AALIB_CFLAGS=`$AALIB_CONFIG $aalib_args --cflags`
|
||||
+ AALIB_LIBS=`$AALIB_CONFIG $aalib_args --libs`
|
||||
|
||||
aalib_major_version=`$AALIB_CONFIG $aalib_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
||||
aalib_minor_version=`$AALIB_CONFIG $aalib_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
||||
- aalib_micro_version=`$AALIB_CONFIG $aalib_config_args --version | \
|
||||
+ aalib_micro_version=`$AALIB_CONFIG $aalib_args --version | \
|
||||
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
||||
if test "x$enable_aalibtest" = "xyes" ; then
|
||||
ac_save_CFLAGS="$CFLAGS"
|
39
aalib/aalib-mouse.patch
Normal file
39
aalib/aalib-mouse.patch
Normal file
@ -0,0 +1,39 @@
|
||||
From 6125c3438e6cf30e1ebd70ca6ac3f1e04481c7a7 Mon Sep 17 00:00:00 2001
|
||||
From: Gergely Nagy <algernon@madhouse-project.org>
|
||||
Date: Sat, 30 Jun 2012 13:08:13 +0200
|
||||
Subject: [PATCH] Typo fix: KEY_MOUDE => KEY_MOUSE
|
||||
|
||||
Patch by Sam Hocevar <sam@zoy.org> 17 Nov 2003
|
||||
|
||||
Origin: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=221243
|
||||
---
|
||||
src/aacurkbd.c | 2 +-
|
||||
src/aastdin.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/aacurkbd.c b/src/aacurkbd.c
|
||||
index 801897b..418b6a3 100644
|
||||
--- a/src/aacurkbd.c
|
||||
+++ b/src/aacurkbd.c
|
||||
@@ -112,7 +112,7 @@ static int curses_getchar(aa_context * c1, int wait)
|
||||
return (AA_UP);
|
||||
case KEY_DOWN:
|
||||
return (AA_DOWN);
|
||||
-#ifdef KEY_MOUDE
|
||||
+#ifdef KEY_MOUSE
|
||||
case KEY_MOUSE:
|
||||
#ifdef GPM_MOUSEDRIVER
|
||||
if (!__curses_usegpm)
|
||||
diff --git a/src/aastdin.c b/src/aastdin.c
|
||||
index 696d87b..e2dabe4 100644
|
||||
--- a/src/aastdin.c
|
||||
+++ b/src/aastdin.c
|
||||
@@ -88,7 +88,7 @@ static int stdin_getchar(aa_context * c1, int wait)
|
||||
if (c > 0 && c < 127 && c != 127)
|
||||
return (c);
|
||||
switch (c) {
|
||||
-#ifdef KEY_MOUDE
|
||||
+#ifdef KEY_MOUSE
|
||||
case KEY_MOUSE:
|
||||
return AA_MOUSE
|
||||
#endif
|
14
aalib/aalib-opaque-ncurses-fix.patch
Normal file
14
aalib/aalib-opaque-ncurses-fix.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff -up aalib-1.4.0/src/aacurses.c.opaque-ncurses-fix aalib-1.4.0/src/aacurses.c
|
||||
--- aalib-1.4.0/src/aacurses.c.opaque-ncurses-fix 2024-02-10 06:32:32.008267145 -0500
|
||||
+++ aalib-1.4.0/src/aacurses.c 2024-02-10 06:33:38.648245270 -0500
|
||||
@@ -71,8 +71,8 @@ static void curses_getsize(aa_context *
|
||||
{
|
||||
if (__resized_curses)
|
||||
curses_uninit(c), curses_init(&c->params, NULL,&c->driverparams, NULL), __resized_curses = 0;
|
||||
- *width = stdscr->_maxx + 1;
|
||||
- *height = stdscr->_maxy + 1;
|
||||
+ *width = getmaxx(stdscr);
|
||||
+ *height = getmaxy(stdscr);
|
||||
#ifdef GPM_MOUSEDRIVER
|
||||
gpm_mx = *width;
|
||||
gpm_my = *height;
|
Loading…
x
Reference in New Issue
Block a user