diff --git a/alfont-2.0.9-build-fixes.patch b/alfont-2.0.9-build-fixes.patch deleted file mode 100644 index 57fbf20..0000000 --- a/alfont-2.0.9-build-fixes.patch +++ /dev/null @@ -1,309 +0,0 @@ -diff -up alfont-2.0.9/src/alfont.c~ alfont-2.0.9/src/alfont.c ---- alfont-2.0.9/src/alfont.c~ 2024-06-15 13:56:38.455325588 +0200 -+++ alfont-2.0.9/src/alfont.c 2024-06-15 13:56:43.799293099 +0200 -@@ -515,7 +515,7 @@ ALFONT_FONT *alfont_load_font_from_mem(c - memcpy((void *)font->data, (void *)data, data_len); - - /* load the font */ -- error = FT_New_Memory_Face(ft_library, font->data, font->data_size, 0, &font->face); -+ error = FT_New_Memory_Face(ft_library, (const FT_Byte *)font->data, font->data_size, 0, &font->face); - - if (error) { - free(font->data); -@@ -609,7 +609,7 @@ void alfont_textout_aa_ex(BITMAP *bmp, A - char *lpszW; - char *lpszW_tmp; - int x_tmp; -- int max_advancex; -+ int max_advancex=0; - char *lpszW_pointer=NULL; //used for freeing string - char *s_pointer=NULL; //used for original string fixed by autofix - char *s_pointer_temp=NULL; //temporary used for autofix string -@@ -618,11 +618,10 @@ void alfont_textout_aa_ex(BITMAP *bmp, A - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. - int character; - int alpha_table[256]; -- int last_glyph_index; - int first_x=0, final_x=0, final_y=0; -- int curr_uformat; -+ int curr_uformat=0; - int first_flag=TRUE; //First Char flag -- BITMAP *masked_bmp; //the masked bmp used by Font hollow -+ BITMAP *masked_bmp=NULL; //the masked bmp used by Font hollow - - #ifdef ALFONT_DOS - iconv_t c_pt; -@@ -889,7 +888,6 @@ void alfont_textout_aa_ex(BITMAP *bmp, A - - /* draw char by char (using allegro unicode funcs) */ - acquire_bitmap(bmp); -- last_glyph_index = 0; - - if (f->fixed_width == TRUE) - { -@@ -978,7 +976,6 @@ void alfont_textout_aa_ex(BITMAP *bmp, A - real_x += v.x >> 6; - real_y += v.y >> 6; - }*/ -- last_glyph_index = glyph_index; - - /* draw only if exists */ - if ((cglyph.aa_available) && (cglyph.aabmp)) { -@@ -1774,18 +1771,18 @@ void alfont_textout_ex(BITMAP *bmp, ALFO - char *lpszW; - char *lpszW_tmp; - int x_tmp; -- int max_advancex; -+ int max_advancex=0; - char *lpszW_pointer=NULL; //used for freeing string - char *s_pointer=NULL; //used for original string fixed by autofix - char *s_pointer_temp=NULL; //temporary used for autofix string - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. -- int character, last_glyph_index; -+ int character; - int first_x=0, final_x=0, final_y=0; -- int curr_uformat; -+ int curr_uformat=0; - int first_flag=TRUE; //First Char flag -- BITMAP *masked_bmp; //the masked bmp used by Font hollow -+ BITMAP *masked_bmp=NULL; //the masked bmp used by Font hollow - #ifdef ALFONT_DOS - iconv_t c_pt; - size_t fromlen, tolen; -@@ -2026,8 +2023,6 @@ void alfont_textout_ex(BITMAP *bmp, ALFO - - /* draw char by char (using allegro unicode funcs) */ - acquire_bitmap(bmp); -- last_glyph_index = 0; -- - - if (f->fixed_width == TRUE) - { -@@ -2115,7 +2110,6 @@ void alfont_textout_ex(BITMAP *bmp, ALFO - real_x += v.x >> 6; - real_y += v.y >> 6; - }*/ -- last_glyph_index = glyph_index; - - /* draw only if exists */ - if ((cglyph.mono_available) && (cglyph.bmp)) { -@@ -2628,14 +2622,14 @@ int alfont_text_height(ALFONT_FONT *f) { - int alfont_text_length(ALFONT_FONT *f, const char *str) { - char *lpszW; - char *lpszW_tmp; -- int max_advancex; -+ int max_advancex=0; - char *lpszW_pointer=NULL; //used for freeing string - char *str_pointer=NULL; //used for original string fixed by autofix - char *str_pointer_temp=NULL; //temporary used for autofix string - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. -- int curr_uformat; -+ int curr_uformat=0; - int total_length = 0, character, last_glyph_index; - int glyph_index; - int glyph_index_tmp; -@@ -2953,7 +2947,7 @@ int alfont_text_length(ALFONT_FONT *f, c - } - - int alfont_char_length(ALFONT_FONT *f, int character) { -- int curr_uformat; -+ int curr_uformat=0; - int total_length = 0, last_glyph_index; - int glyph_index; - -@@ -3034,7 +3028,7 @@ int alfont_text_count(ALFONT_FONT *f, co - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. -- int curr_uformat; -+ int curr_uformat=0; - int string_count=0; - #ifdef ALFONT_DOS - iconv_t c_pt; -@@ -3282,14 +3276,13 @@ int alfont_text_count(ALFONT_FONT *f, co - - int alfont_ugetc(ALFONT_FONT *f, const char *s) { - char *lpszW; -- char *lpszW_pointer=NULL; //used for freeing string - char *s_pointer=NULL; //used for original string fixed by autofix - char *s_pointer_temp=NULL; //temporary used for autofix string - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. - int character; -- int curr_uformat; -+ int curr_uformat=0; - #ifdef ALFONT_DOS - iconv_t c_pt; - size_t fromlen, tolen; -@@ -3526,20 +3519,16 @@ int alfont_ugetc(ALFONT_FONT *f, const c - - int alfont_ugetx(ALFONT_FONT *f, char **s) { - char *lpszW; -- char *lpszW_pointer=NULL; //used for freeing string - char *s_pointer=NULL; //used for original string fixed by autofix - char *s_pointer_temp=NULL; //temporary used for autofix string - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. - int character; -- int curr_uformat; -+ int curr_uformat=0; - -- char *lpszWS; -+ const char *lpszWS; - char *lpszWA; -- int sLen; //length before advances the *s pointer to the next character -- int aLen; //length after advances the *s pointer to the next character -- int lIndex; - - #ifdef ALFONT_DOS - iconv_t c_pt; -@@ -3551,8 +3540,6 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - return 0; - } - -- sLen = strlen(*s); -- - nLen = strlen(*s) + 1; - s_pointer = (char *)malloc(nLen*sizeof(char)); - memset(s_pointer, 0, nLen); -@@ -3761,9 +3748,9 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - //advances the *s pointer to the next character - - if (f->type==1) { -- ugetxc((char**)s); -+ ugetxc((const char**)s); - #ifdef ALFONT_LINUX -- ugetxc((char**)s); -+ ugetxc((const char**)s); - #endif - } - else if(f->type==2) { -@@ -3772,10 +3759,7 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - ugetxc(&lpszWS); - #endif - #ifdef ALFONT_DOS -- if ((c_pt = iconv_open(f->language, "UTF-16LE")) == (iconv_t)-1) { -- aLen = strlen(lpszWS); -- } -- else { -+ if ((c_pt = iconv_open(f->language, "UTF-16LE")) != (iconv_t)-1) { - iconv(c_pt, NULL, NULL, NULL, NULL); - fromlen = strlen(lpszWS) + 1; - tolen = MB_CUR_MAX * fromlen * (sizeof(wchar_t) + 1); -@@ -3790,7 +3774,6 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - free(lpszWA); - lpszWA = lpszWS - } -- aLen = strlen(lpszWA); - } - #else - setlocale(LC_CTYPE,f->language); -@@ -3798,14 +3781,8 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - lpszWA = (char *)malloc(nLen*sizeof(char)); - memset(lpszWA, 0, nLen); - wcstombs(lpszWA, (const wchar_t *)lpszWS, nLen); -- aLen = strlen(lpszWA); - #endif - -- for (lIndex = 0; lIndex < sLen - aLen; lIndex++) -- { -- (*(*s)++); -- } -- - if (lpszWA) { - free(lpszWA); - } -@@ -3814,9 +3791,9 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - #ifdef ALFONT_LINUX - set_uformat(U_UTF8); - #endif -- ugetxc((char**)s); -+ ugetxc((const char**)s); - #ifdef ALFONT_LINUX -- ugetxc((char**)s); -+ ugetxc((const char**)s); - #endif - } - -@@ -3842,20 +3819,16 @@ int alfont_ugetx(ALFONT_FONT *f, char ** - - int alfont_ugetxc(ALFONT_FONT *f, const char **s) { - char *lpszW; -- char *lpszW_pointer=NULL; //used for freeing string - char *s_pointer=NULL; //used for original string fixed by autofix - char *s_pointer_temp=NULL; //temporary used for autofix string - char *precedingchar_pointer=NULL; //used for precedingchar character - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. - int character; -- int curr_uformat; -+ int curr_uformat=0; - -- char *lpszWS; -+ const char *lpszWS; - char *lpszWA; -- int sLen; //length before advances the *s pointer to the next character -- int aLen; //length after advances the *s pointer to the next character -- int lIndex; - - #ifdef ALFONT_DOS - iconv_t c_pt; -@@ -3867,8 +3840,6 @@ int alfont_ugetxc(ALFONT_FONT *f, const - return 0; - } - -- sLen = strlen(*s); -- - nLen = strlen(*s) + 1; - s_pointer = (char *)malloc(nLen*sizeof(char)); - memset(s_pointer, 0, nLen); -@@ -4088,10 +4059,7 @@ int alfont_ugetxc(ALFONT_FONT *f, const - ugetxc(&lpszWS); - #endif - #ifdef ALFONT_DOS -- if ((c_pt = iconv_open(f->language, "UTF-16LE")) == (iconv_t)-1) { -- aLen = strlen(lpszWS); -- } -- else { -+ if ((c_pt = iconv_open(f->language, "UTF-16LE")) != (iconv_t)-1) { - iconv(c_pt, NULL, NULL, NULL, NULL); - fromlen = strlen(lpszWS) + 1; - tolen = MB_CUR_MAX * fromlen * (sizeof(wchar_t) + 1); -@@ -4106,7 +4074,6 @@ int alfont_ugetxc(ALFONT_FONT *f, const - free(lpszWA); - lpszWA = lpszWS - } -- aLen = strlen(lpszWA); - } - #else - setlocale(LC_CTYPE,f->language); -@@ -4114,14 +4081,8 @@ int alfont_ugetxc(ALFONT_FONT *f, const - lpszWA = (char *)malloc(nLen*sizeof(char)); - memset(lpszWA, 0, nLen); - wcstombs(lpszWA, (const wchar_t *)lpszWS, nLen); -- aLen = strlen(lpszWA); - #endif - -- for (lIndex = 0; lIndex < sLen - aLen; lIndex++) -- { -- (*(*s)++); -- } -- - if (lpszWA) { - free(lpszWA); - } -@@ -4164,7 +4125,7 @@ int alfont_need_uconvert(ALFONT_FONT *f, - int need_unicode_convert=TRUE; - int nLen; - int ret; //decide that if the ASCII Code convert to Unicode Code is all OK when used for autofix string or used for general convert. -- int curr_uformat; -+ int curr_uformat=0; - #ifdef ALFONT_DOS - iconv_t c_pt; - size_t fromlen, tolen; diff --git a/alfont.rpmlintrc b/alfont.rpmlintrc deleted file mode 100644 index fc50c84..0000000 --- a/alfont.rpmlintrc +++ /dev/null @@ -1,4 +0,0 @@ -# -devel has no docs -addFilter("no-documentation") -# Source0 is not an URL -addFilter("invalid-url") diff --git a/alfont.spec b/alfont.spec index 6256dca..00ad1a9 100644 --- a/alfont.spec +++ b/alfont.spec @@ -1,15 +1,14 @@ Name: alfont Version: 2.0.9 -Release: 32%{?dist} +Release: 12%{?dist} Summary: Font rendering library for the Allegro game library +Group: System Environment/Libraries License: FTL URL: http://chernsha.sitesled.com/ # this is http://chernsha.sitesled.com/AlFont209.rar repackaged in .tgz format Source0: %{name}-%{version}.tar.gz Patch0: alfont-2.0.9-linux.patch Patch1: alfont-2.0.9-remove-alfont_get_string.patch -Patch2: alfont-2.0.9-build-fixes.patch -BuildRequires: gcc BuildRequires: allegro-devel freetype-devel %description @@ -20,6 +19,7 @@ text using freetype fonts on Allegro bitmaps. %package devel Summary: Development files for %{name} +Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: allegro-devel @@ -29,11 +29,11 @@ developing applications that use %{name}. %prep -%autosetup -p1 +%setup -q +%patch0 -p1 -z .linux +%patch1 -p1 for i in include/alfont*.h freetype/docs/FTL.TXT; do sed -i.orig s'/\r//g' $i - iconv -f ISO-8859-1 -t UTF-8 $i > $i.utf8 - mv $i.utf8 $i touch -r $i.orig $i done @@ -45,7 +45,6 @@ done gcc -fPIC -DPIC $RPM_OPT_FLAGS -Iinclude `freetype-config --cflags` \ -o src/alfont.o -c src/alfont.c gcc -shared -Wl,-soname,lib%{name}.so.2 -o lib%{name}.so.%{version} \ - $RPM_OPT_FLAGS $RPM_LD_FLAGS \ src/alfont.o $(freetype-config --libs) $(allegro-config --libs) @@ -58,12 +57,12 @@ ln -s lib%{name}.so.%{version} $RPM_BUILD_ROOT%{_libdir}/lib%{name}.so install -m 644 include/%{name}*.h $RPM_BUILD_ROOT%{_includedir} -%ldconfig_scriptlets +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig %files -%doc CHANGES.txt README.txt -%license freetype/docs/FTL.TXT +%doc CHANGES.txt README.txt freetype/docs/FTL.TXT %{_libdir}/lib%{name}.so.* %files devel @@ -72,68 +71,6 @@ install -m 644 include/%{name}*.h $RPM_BUILD_ROOT%{_includedir} %changelog -* Fri Jan 16 2026 Fedora Release Engineering - 2.0.9-32 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Wed Jul 23 2025 Fedora Release Engineering - 2.0.9-31 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jan 16 2025 Fedora Release Engineering - 2.0.9-30 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 17 2024 Fedora Release Engineering - 2.0.9-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sat Jun 15 2024 Hans de Goede - 2.0.9-28 -- Fix FTBFS (rhbz#2260975) -- Use distro LD_FLAGS when linking - -* Mon Jan 22 2024 Fedora Release Engineering - 2.0.9-27 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 2.0.9-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Wed Jul 19 2023 Fedora Release Engineering - 2.0.9-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed Jan 18 2023 Fedora Release Engineering - 2.0.9-24 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jul 20 2022 Fedora Release Engineering - 2.0.9-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jan 19 2022 Fedora Release Engineering - 2.0.9-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 2.0.9-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon Jan 25 2021 Fedora Release Engineering - 2.0.9-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Fri Jul 31 2020 Fedora Release Engineering - 2.0.9-19 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 2.0.9-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jan 28 2020 Fedora Release Engineering - 2.0.9-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jul 24 2019 Fedora Release Engineering - 2.0.9-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 2.0.9-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Jul 12 2018 Fedora Release Engineering - 2.0.9-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Feb 07 2018 Fedora Release Engineering - 2.0.9-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - * Wed Aug 02 2017 Fedora Release Engineering - 2.0.9-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild