diff --git a/.cvsignore b/.cvsignore
new file mode 100644
index 0000000..e69de29
diff --git a/.gitignore b/.gitignore
index c338db7..8c1bdd8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-aalib-1.4rc5.tar.gz
+/aalib-1.4rc5.tar.gz
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..908340f
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,21 @@
+# Makefile for source rpm: aalib
+# $Id$
+NAME := aalib
+SPECFILE = $(firstword $(wildcard *.spec))
+
+define find-makefile-common
+for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
+endef
+
+MAKEFILE_COMMON := $(shell $(find-makefile-common))
+
+ifeq ($(MAKEFILE_COMMON),)
+# attept a checkout
+define checkout-makefile-common
+test -f CVS/Rootx && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
+endef
+
+MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
+endif
+
+include $(MAKEFILE_COMMON)
diff --git a/aalib-1.4_rc5-fix-aarender.patch b/aalib-1.4_rc5-fix-aarender.patch
deleted file mode 100644
index 2c3d5bf..0000000
--- a/aalib-1.4_rc5-fix-aarender.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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])))];
diff --git a/aalib-1.4_rc5-free-offset-pointer.patch b/aalib-1.4_rc5-free-offset-pointer.patch
deleted file mode 100644
index 3ae697e..0000000
--- a/aalib-1.4_rc5-free-offset-pointer.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- 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;
- }
diff --git a/aalib-1.4rc5-opaque-ncurses-fix.patch b/aalib-1.4rc5-opaque-ncurses-fix.patch
deleted file mode 100644
index 42c430c..0000000
--- a/aalib-1.4rc5-opaque-ncurses-fix.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-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;
diff --git a/aalib-c99.patch b/aalib-c99.patch
deleted file mode 100644
index 2a65cc2..0000000
--- a/aalib-c99.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-Add additional system header #include directives for more
-function prototypes. This avoids implicit function declarations
-and build failures with future compilers.
-
-Submitted upstream:
-
-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
-+#include
- #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
-
- #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
-+#include
- #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
-+#include
- #include
- #include
- #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
- #ifdef LINUX_DRIVER
- #include
- #include
-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
-+#include
- #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
-+#include
- #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
- #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
-+#include
- #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
- #include
- #include
-+#include
- #include "aalib.h"
- #include "aaint.h"
- #include "aaxint.h"
diff --git a/aalib-ppc.patch b/aalib-ppc.patch
deleted file mode 100644
index 617f01f..0000000
--- a/aalib-ppc.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- aalib-1.4.0/ltconfig.foo 2007-05-04 08:47:13.000000000 -0400
-+++ aalib-1.4.0/ltconfig 2007-05-04 08:48:26.000000000 -0400
-@@ -1994,16 +1994,6 @@ linux-gnu*)
- shlibpath_var=LD_LIBRARY_PATH
- shlibpath_overrides_runpath=no
- deplibs_check_method=pass_all
--
-- if test -f /lib/ld.so.1; then
-- dynamic_linker='GNU ld.so'
-- else
-- # Only the GNU ld.so supports shared libraries on MkLinux.
-- case "$host_cpu" in
-- powerpc*) dynamic_linker=no ;;
-- *) dynamic_linker='Linux ld.so' ;;
-- esac
-- fi
- ;;
-
- netbsd*)
diff --git a/aalib.spec b/aalib.spec
index f43ae9c..5d994d6 100644
--- a/aalib.spec
+++ b/aalib.spec
@@ -1,33 +1,20 @@
%global rc_subver rc5
-%global optflags %{optflags} -std=gnu17
Summary: ASCII art library
Name: aalib
Version: 1.4.0
-Release: 0.57.%{rc_subver}%{?dist}
-License: LGPL-2.1-or-later
+Release: 0.37.%{rc_subver}%{?dist}
+License: LGPLv2+
URL: http://aa-project.sourceforge.net/aalib/
Source0: http://download.sourceforge.net/aa-project/%{name}-1.4%{rc_subver}.tar.gz
Patch0: aalib-aclocal.patch
Patch1: aalib-config-rpath.patch
Patch2: aalib-1.4rc5-bug149361.patch
Patch3: aalib-1.4rc5-rpath.patch
-Patch4: aalib-1.4rc5-x_libs.patch
-Patch5: aalib-1.4rc5-libflag.patch
-Patch6: aalib-c99.patch
-Patch7: https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/aalib/files/aalib-1.4_rc5-free-offset-pointer.patch
-Patch8: https://gitweb.gentoo.org/repo/gentoo.git/plain/media-libs/aalib/files/aalib-1.4_rc5-fix-aarender.patch
-# Modern ncurses has an opaque WINDOW structure (you cannot address its members directly)
-# Use the getmaxx() and getmaxy() functions provided by ncurses instead.
-Patch9: aalib-1.4rc5-opaque-ncurses-fix.patch
-
-BuildRequires: autoconf
-BuildRequires: gpm-devel
-BuildRequires: libtool
-BuildRequires: libXt-devel
-BuildRequires: make
-BuildRequires: ncurses-devel
-BuildRequires: slang-devel
+Patch4: aalib-1.4rc5-x_libs.patch
+Patch5: aalib-1.4rc5-libflag.patch
+BuildRequires: slang-devel libXt-devel gpm-devel ncurses-devel
+BuildRequires: autoconf libtool
%description
AA-lib is a low level gfx library just as many other libraries are. The
@@ -52,27 +39,23 @@ with aalib.
%prep
%setup -q
-%patch -P0 -p0
-%patch -P1 -p0
-%patch -P2 -p1 -b .bug149361
-%patch -P3 -p1 -b .rpath
-%patch -P4 -p1 -b .x_libs
-%patch -P5 -p0 -b .libflag
-%patch -P6 -p1
-%patch -P7 -p1 -b .free-offset-pointer
-%patch -P8 -p1 -b .fix-aarender
-%patch -P9 -p1 -b .opaque-ncurses-fix
+%patch0 -p0
+%patch1 -p0
+%patch2 -p1 -b .bug149361
+%patch3 -p1 -b .rpath
+%patch4 -p1 -b .x_libs
+%patch5 -p0 -b .libflag
# included libtool is too old, we need to rebuild
autoreconf -v -f -i
%build
%configure --disable-static --with-curses-driver=yes --with-ncurses
-%make_build
+make %{?_smp_mflags}
%install
-%make_install
+make install DESTDIR=$RPM_BUILD_ROOT INSTALL="%{__install} -p"
rm -f $RPM_BUILD_ROOT{%{_libdir}/libaa.la,%{_infodir}/dir}
# clean up multilib conflicts
@@ -90,7 +73,7 @@ touch -r NEWS $RPM_BUILD_ROOT%{_bindir}/aalib-config $RPM_BUILD_ROOT%{_datadir}/
%files libs
%doc README ChangeLog NEWS
%license COPYING
-%{_libdir}/libaa.so.1*
+%{_libdir}/libaa.so.*
%files devel
%{_bindir}/aalib-config
@@ -101,73 +84,6 @@ touch -r NEWS $RPM_BUILD_ROOT%{_bindir}/aalib-config $RPM_BUILD_ROOT%{_datadir}/
%{_datadir}/aclocal/aalib.m4
%changelog
-* Fri Jan 16 2026 Fedora Release Engineering - 1.4.0-0.57.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
-
-* Wed Jul 23 2025 Fedora Release Engineering - 1.4.0-0.56.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
-
-* Mon Mar 3 2025 Tom Callaway - 1.4.0-0.55.rc5
-- force std=gnu17 (it does not support C23)
-- fixes FTBFS
-
-* Thu Jan 16 2025 Fedora Release Engineering - 1.4.0-0.54.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
-
-* Fri Jan 03 2025 Xavier Bachelot - 1.4.0-0.53.rc5
-- Re-enable gpm on EL10
-
-* Fri Oct 04 2024 Xavier Bachelot - 1.4.0-0.52.rc5
-- Do not BuildRequires gpm-devel on EL10
-- Specfile clean up
-
-* Wed Jul 17 2024 Fedora Release Engineering - 1.4.0-0.51.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
-
-* Sat Feb 10 2024 Tom Callaway - 1.4.0-0.50.rc5
-- apply two fixes from gentoo
-- fix aalib to handle opaque WINDOW in ncurses
-- fix license tag
-- fix patch macro syntax
-- fixes FTBFS
-
-* Mon Jan 22 2024 Fedora Release Engineering - 1.4.0-0.49.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-* Fri Jan 19 2024 Fedora Release Engineering - 1.4.0-0.48.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
-
-* Wed Jul 19 2023 Fedora Release Engineering - 1.4.0-0.47.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
-
-* Thu Apr 06 2023 Florian Weimer - 1.4.0-0.46.rc5
-- Port to C99
-
-* Wed Jan 18 2023 Fedora Release Engineering - 1.4.0-0.45.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
-
-* Wed Jul 20 2022 Fedora Release Engineering - 1.4.0-0.44.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Wed Jan 19 2022 Fedora Release Engineering - 1.4.0-0.43.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Wed Jul 21 2021 Fedora Release Engineering - 1.4.0-0.42.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Mon Jan 25 2021 Fedora Release Engineering - 1.4.0-0.41.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Fri Jul 31 2020 Fedora Release Engineering - 1.4.0-0.40.rc5
-- Second attempt - Rebuilt for
- https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Mon Jul 27 2020 Fedora Release Engineering - 1.4.0-0.39.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Tue Jan 28 2020 Fedora Release Engineering - 1.4.0-0.38.rc5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
* Wed Jul 24 2019 Fedora Release Engineering - 1.4.0-0.37.rc5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
diff --git a/sources b/sources
index d31b3e6..ead3a87 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-9801095c42bba12edebd1902bcf0a990 aalib-1.4rc5.tar.gz
+SHA512 (aalib-1.4rc5.tar.gz) = 3e4506eccce3b81ccbbb79a4a1b90abd39e2259e6043fde90f70b9ca279bd4c37758a047167267b97c4ec92f64fb17c7c8f548114f0d0c6e78ddb9463b5f1299