# # spec file for package aalib # # Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: aalib %define lname libaa1 BuildRequires: libtool BuildRequires: ncurses-devel BuildRequires: pkgconfig(x11) %if 0%{?suse_version} > 1130 BuildRequires: gpm-devel %else BuildRequires: gpm %endif URL: https://aa-project.sourceforge.net/ # bug437293 %ifarch ppc64 Obsoletes: aalib-64bit %endif # Version: 1.4.0 Release: 0 Summary: An ASCII Art Library License: GPL-2.0-or-later Group: Development/Libraries/C and C++ Source: http://sourceforge.net/projects/aa-project/files/aa-lib/1.4rc5/%{name}-1.4rc5.tar.gz Source1: http://downloads.sourceforge.net/project/aa-project/aavga/1.0rc1/aavga-1.0rc1.tar.gz Source2: http://downloads.sourceforge.net/project/aa-project/aview/1.3.0rc1/aview-1.3.0rc1.tar.gz Source3: baselibs.conf Patch1: fix_gpm_fd_handling.diff Patch2: aavga.dif Patch3: aalib-1.4.0.dif Patch4: aview-1.3.0.patch Patch5: aview-1.3.0-tmpvuln.diff Patch6: aalib-distint.patch Patch7: aview-signed-char.patch Patch8: aview-includes.patch Patch9: aalib-includes.patch Patch10: aalib-reentrant.patch Patch11: aalib-1.4.0-config.patch Patch12: aalib-1.4.0-fdleak.patch Patch13: aalib-ncurses-6.0-accessors.patch PreReq: %install_info_prereq BuildRequires: fdupes %description AA-lib is a low level gfx library. AA-lib does not require a graphics device. In fact, there is no graphical output possible. AA-lib replaces old-fashioned output methods with a powerful ASCII art renderer. %package -n %lname Summary: An ASCII Art Library Group: System/Libraries %description -n %lname AA-lib is a low level gfx library. AA-lib does not require a graphics device. In fact, there is no graphical output possible. AA-lib replaces old-fashioned output methods with a powerful ASCII art renderer. %package devel Summary: Development Package for AAlib Group: Development/Libraries/C and C++ # bug437293 %ifarch ppc64 Obsoletes: aalib-devel-64bit %endif # Requires: %lname = %version Requires: glibc-devel Obsoletes: aalibdev %description devel Files needed for developing software that uses AAlib. %prep %setup -q -a 1 -b 2 %patch -P 1 %patch -P 3 %patch -P 10 %patch -P 11 %patch -P 12 %patch -P 13 -p1 cd aavga-1.0 %patch -P 2 cd ../../aview-* %patch -P 4 %patch -P 7 %patch -P 8 cd .. %patch -P 5 %patch -P 6 %patch -P 9 %build %{?suse_update_config} autoreconf -fiv export CFLAGS="%{optflags} -fstrength-reduce -fomit-frame-pointer" %ifarch %ix86 export CFLAGS="$CFLAGS -falign-loops=2 -falign-jumps=2 -falign-functions=2" %endif %configure --disable-static --with-slang-driver=no --with-ncurses %make_build %install %make_install mkdir -p %{buildroot}/%{_defaultdocdir}/%{name} cp -av ANNOUNCE AUTHORS COPYING INSTALL NEWS README %{buildroot}/%{_defaultdocdir}/%{name} cd ../aview-1.3.0 PATH=%{buildroot}/%{_bindir}:$PATH \ CFLAGS="%{optflags} -I%{buildroot}/usr/include" \ LDFLAGS="-L%{buildroot}/%{_libdir}" \ LD_LIBRARY_PATH="%{buildroot}/%{_libdir}" \ ./configure --prefix=/usr --mandir=%{_mandir} make %make_install mkdir -p %{buildroot}/%{_defaultdocdir}/%{name}/aview cp -av README* ANNOUNCE COPYING TODO *.lsm %{buildroot}/%{_defaultdocdir}/%{name}/aview cd - cd aavga-1.0 make CFLAGS="%{optflags}" cp -av aavga.so %{buildroot}/%_libdir mkdir -p %{buildroot}/%{_defaultdocdir}/%{name}/aavga cp -av aavga.lsm COPYING README %{buildroot}/%{_defaultdocdir}/%{name}/aavga cd .. rm -f %{buildroot}%{_libdir}/*.la %fdupes %{buildroot}/%{_prefix} %post %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz %preun %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig %files %docdir %{_defaultdocdir}/%{name} %{_defaultdocdir}/%{name} %_bindir/aafire %_bindir/aaflip %_bindir/aainfo %_bindir/aasavefont %_bindir/aatest %_bindir/asciiview %_bindir/aview %{_infodir}/aalib.info.gz %{_infodir}/aalib.info-?.gz %{_mandir}/man1/aafire.1.gz %{_mandir}/man1/aview.1.gz %{_mandir}/man1/asciiview.1.gz %files -n %lname %_libdir/libaa.so.1.0.4 %_libdir/libaa.so.1 %_libdir/aavga.so %files devel %_includedir/aalib.h %_libdir/libaa.so %_datadir/aclocal/aalib.m4 %_bindir/aalib-config %{_mandir}/man3/aa_*.3.gz %{_mandir}/man3/mem_d.3.gz %{_mandir}/man3/save_d.3.gz %changelog