diff --git a/alex4-fcommon-fix.patch b/alex4-fcommon-fix.patch deleted file mode 100644 index 5ef36b0..0000000 --- a/alex4-fcommon-fix.patch +++ /dev/null @@ -1,177 +0,0 @@ -diff -ur alex4src/src/bullet.c alex4src.nre/src/bullet.c ---- alex4src/src/bullet.c 2003-07-26 12:53:52.000000000 +0200 -+++ alex4src.nre/src/bullet.c 2020-02-14 16:55:54.227165835 +0100 -@@ -26,6 +26,8 @@ - #include "timer.h" - #include "../data/data.h" - -+// the bullets themselves -+Tbullet bullet[MAX_BULLETS]; - - // sets values on a bullet - void set_bullet(Tbullet *b, int x, int y, double dx, double dy, BITMAP *bmp, int bad) { -diff -ur alex4src/src/bullet.h alex4src.nre/src/bullet.h ---- alex4src/src/bullet.h 2020-02-14 20:21:00.557446660 +0100 -+++ alex4src.nre/src/bullet.h 2020-02-14 16:55:54.227165835 +0100 -@@ -42,7 +42,7 @@ - #define MAX_BULLETS 64 - - // the bullets themselves --Tbullet bullet[MAX_BULLETS]; -+extern Tbullet bullet[MAX_BULLETS]; - - // functions - void reset_bullets(Tbullet *b, int max); -diff -ur alex4src/src/edit.c alex4src.nre/src/edit.c ---- alex4src/src/edit.c 2020-02-14 20:21:00.559446658 +0100 -+++ alex4src.nre/src/edit.c 2020-02-14 20:14:07.160857305 +0100 -@@ -33,8 +33,6 @@ - int edit_tile = 0; - // path to current map - char edit_path_and_file[1024]; --// datafile to use --DATAFILE *data; - // current edit mode - int edit_mode; - -diff -ur alex4src/src/main.h alex4src.nre/src/main.h ---- alex4src/src/main.h 2020-02-14 20:21:00.556446662 +0100 -+++ alex4src.nre/src/main.h 2020-02-14 20:13:57.681842152 +0100 -@@ -59,6 +59,7 @@ - #define SMPL_TALK 24 - #define SMPL_BEAM 25 - -+extern DATAFILE *data; - - // functions - char *get_init_string(); -diff -ur alex4src/src/particle.c alex4src.nre/src/particle.c ---- alex4src/src/particle.c 2003-07-26 12:53:52.000000000 +0200 -+++ alex4src.nre/src/particle.c 2020-02-14 20:17:53.166697996 +0100 -@@ -21,16 +21,11 @@ - - - -+#include "main.h" - #include "particle.h" - --// pointer to datafile --DATAFILE *data; -- -- --// set datafile to use --void set_datafile(DATAFILE *d) { -- data = d; --} -+// the particles themselves -+Tparticle particle[MAX_PARTICLES]; - - - // inits variables in a particle -diff -ur alex4src/src/particle.h alex4src.nre/src/particle.h ---- alex4src/src/particle.h 2020-02-14 20:21:00.555446663 +0100 -+++ alex4src.nre/src/particle.h 2020-02-14 20:15:57.210817230 +0100 -@@ -42,10 +42,9 @@ - - - // the particles themselves --Tparticle particle[MAX_PARTICLES]; -+extern Tparticle particle[MAX_PARTICLES]; - - // functions --void set_datafile(DATAFILE *d); - void reset_particles(Tparticle *p, int max); - Tparticle *get_free_particle(Tparticle *p, int max); - void set_particle(Tparticle *p, int x, int y, double dx, double dy, int color, int life, int bmp); -diff -ur alex4src/src/player.c alex4src.nre/src/player.c ---- alex4src/src/player.c 2003-07-26 12:53:52.000000000 +0200 -+++ alex4src.nre/src/player.c 2020-02-14 16:55:54.229165835 +0100 -@@ -25,6 +25,9 @@ - #include "timer.h" - #include "../data/data.h" - -+// the player -+Tplayer player; -+ - // draws the player depending on his state - void draw_player(BITMAP *bmp, Tplayer *p, int x, int y) { - BITMAP *head, *body; -diff -ur alex4src/src/player.h alex4src.nre/src/player.h ---- alex4src/src/player.h 2020-02-14 20:21:00.554446664 +0100 -+++ alex4src.nre/src/player.h 2020-02-14 16:55:54.229165835 +0100 -@@ -53,7 +53,7 @@ - - - // the player --Tplayer player; -+extern Tplayer player; - - // functions - void draw_player(BITMAP *bmp, Tplayer *p, int x, int y); -diff -ur alex4src/src/script.c alex4src.nre/src/script.c ---- alex4src/src/script.c 2020-02-14 20:21:00.560446657 +0100 -+++ alex4src.nre/src/script.c 2020-02-14 20:14:25.441886527 +0100 -@@ -33,9 +33,8 @@ - // silly value - #define NO_CHANGE -3249587 - -- --// datafile to use --DATAFILE *data; -+// array holding the sounds ids -+int active_sounds[MAX_SCRIPT_SOUNDS]; - // internal buffers - BITMAP *buffer; - BITMAP *swap_buffer; -diff -ur alex4src/src/script.h alex4src.nre/src/script.h ---- alex4src/src/script.h 2020-02-14 20:21:00.556446662 +0100 -+++ alex4src.nre/src/script.h 2020-02-14 16:55:54.230165835 +0100 -@@ -42,7 +42,7 @@ - // max number of sounds played by the script - #define MAX_SCRIPT_SOUNDS 16 - // array holding the sounds ids --int active_sounds[MAX_SCRIPT_SOUNDS]; -+extern int active_sounds[MAX_SCRIPT_SOUNDS]; - - - // functions -diff -ur alex4src/src/timer.c alex4src.nre/src/timer.c ---- alex4src/src/timer.c 2020-02-14 20:21:00.557446660 +0100 -+++ alex4src.nre/src/timer.c 2020-02-14 16:55:54.226165836 +0100 -@@ -23,6 +23,14 @@ - #include "allegro.h" - #include "timer.h" - -+// the variables used by the timers -+volatile int frame_count; -+volatile int fps; -+volatile int logic_count; -+volatile int lps; -+volatile int cycle_count; -+volatile int game_count; -+ - // keeps track of frames each second - void fps_counter(void) { - fps = frame_count; -diff -ur alex4src/src/timer.h alex4src.nre/src/timer.h ---- alex4src/src/timer.h 2020-02-14 20:21:00.556446662 +0100 -+++ alex4src.nre/src/timer.h 2020-02-14 16:55:54.227165835 +0100 -@@ -24,12 +24,12 @@ - #define _TIMERS_H_ - - // the variables used by the timers --volatile int frame_count; --volatile int fps; --volatile int logic_count; --volatile int lps; --volatile int cycle_count; --volatile int game_count; -+extern volatile int frame_count; -+extern volatile int fps; -+extern volatile int logic_count; -+extern volatile int lps; -+extern volatile int cycle_count; -+extern volatile int game_count; - - - // functions diff --git a/alex4-ini-comment.patch b/alex4-ini-comment.patch deleted file mode 100644 index fe29d03..0000000 --- a/alex4-ini-comment.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -up alex4src/alex4.ini~ alex4src/alex4.ini ---- alex4src/alex4.ini~ 2003-07-26 12:55:26.000000000 +0200 -+++ alex4src/alex4.ini 2017-09-08 11:50:17.095282921 +0200 -@@ -1,12 +1,11 @@ - ############################################################## - # --# Configuration file for Alex 4 (v1.1) -+# Example configuration file for Alex 4 (v1.1) - # - ############################################################## - # --# If you lose control of the contents of this file --# and wants to restore to the defaults, you will have --# to reinstall the game. Conclusion: Handle with care! -+# To make cchanges to alex4's configuration copy this file to -+# ~/.alex4/alex4.ini and edit it. - # - ############################################################## - diff --git a/alex4-unix.patch b/alex4-unix.patch index b0b3b70..0de8031 100644 --- a/alex4-unix.patch +++ b/alex4-unix.patch @@ -83,7 +83,7 @@ w = get_config_int("graphics", "f_width", 640); h = get_config_int("graphics", "f_height", 480); } -@@ -672,7 +681,7 @@ +@@ -672,10 +681,10 @@ h = get_config_int("graphics", "w_height", 480); } @@ -91,7 +91,11 @@ + log2file(" entering gfx mode set in alex4.ini (%dx%d %s)", w, h, (get_config_int("graphics", "fullscreen", 1) ? "full" : "win")); if (set_gfx_mode( - (get_config_int("graphics", "fullscreen", 0) ? GFX_AUTODETECT_FULLSCREEN : GFX_AUTODETECT_WINDOWED), +- (get_config_int("graphics", "fullscreen", 0) ? GFX_AUTODETECT_FULLSCREEN : GFX_AUTODETECT_WINDOWED), ++ (get_config_int("graphics", "fullscreen", 1) ? GFX_AUTODETECT_FULLSCREEN : GFX_AUTODETECT_WINDOWED), + w, h, 0, 0)) { + log2file(" *** failed"); + log2file(" entering gfx mode (640x480 windowed)"); @@ -695,6 +704,7 @@ textout_centre(swap_screen, font, "loading...", 320, 200, 1); blit_to_screen(swap_screen); diff --git a/alex4.appdata.xml b/alex4.appdata.xml deleted file mode 100644 index 8d19c63..0000000 --- a/alex4.appdata.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - alex4.desktop - CC0-1.0 - GPL+ - Alex the Allegator 4 - Old school platform game - -

- Alex the Allegator 4 is a true jump'n'run, just like the old classic ones. - Guide Alex through the jungle in order to save his girlfriend Lola from - evil humans who want to make a bag of her. -

-

- Alex 4 is a very small game. It runs in a very low resolution with only - four colors and will not provide you with any real time video or 3D - effects. Nor will it snare you with a compelling storyline. It's only a - short platform game with a few tricks up it's sleeve. We're sure you'll - like it. -

-
- https://obiot.github.io/Alex4-WE/readme.html - https://obiot.github.io/Alex4-WE/readme.html#play - - https://obiot.github.io/Alex4-WE/images/overview.gif - - jwrdegoede_at_fedoraproject.org -
diff --git a/alex4.desktop b/alex4.desktop index 392e3f8..549aa7b 100644 --- a/alex4.desktop +++ b/alex4.desktop @@ -1,4 +1,5 @@ [Desktop Entry] +Encoding=UTF-8 Name=Alex the Allegator 4 Comment=Old school platform game Exec=alex4 @@ -7,4 +8,3 @@ Terminal=false StartupNotify=false Type=Application Categories=Game;ArcadeGame;ActionGame; -Keywords=Game;Arcade;Platform;Retro; diff --git a/alex4.png b/alex4.png index 07a7ace..2c8807a 100644 Binary files a/alex4.png and b/alex4.png differ diff --git a/alex4.spec b/alex4.spec index 872a0d3..e5df594 100644 --- a/alex4.spec +++ b/alex4.spec @@ -1,23 +1,19 @@ Name: alex4 Version: 1.0 -Release: 47%{?dist} +Release: 9%{?dist} Summary: Alex the Allegator 4 - Platform game -License: GPL-1.0-or-later -URL: https://obiot.github.io/Alex4-WE/readme.html -Source0: http://downloads.sf.net/allegator/Alex4/source%20and%20data/alex4src_data.zip +Group: Amusements/Games +License: GPL+ +URL: http://allegator.sourceforge.net/ +Source0: http://dl.sf.net/sourceforge/allegator/alex4src_data.zip Source1: alex4.desktop Source2: alex4.png -Source3: alex4.appdata.xml Patch0: alex4-unix.patch Patch1: alex4-allegro-4.2.patch Patch2: alex4-dot-files-endian-clean.patch Patch3: alex4-fsf-address.patch -Patch4: alex4-ini-comment.patch -Patch5: alex4src-warnings.patch -Patch6: alex4-fcommon-fix.patch -BuildRequires: gcc -BuildRequires: allegro-devel dumb-devel desktop-file-utils libappstream-glib -BuildRequires: make +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: allegro-devel dumb-devel desktop-file-utils ImageMagick Requires: hicolor-icon-theme %description @@ -27,163 +23,64 @@ nice colors guaranteed! %prep -%autosetup -p1 -n alex4src -sed -i 's/\r//' *.txt *.ini +%setup -q -n alex4src +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +sed -i 's/\r//' *.txt %build pushd src make %{?_smp_mflags} PREFIX=%{_prefix} \ - CFLAGS="$RPM_OPT_FLAGS -Wno-deprecated-declarations -Wno-unused-result -DALLEGRO_FIX_ALIASES" + CFLAGS="$RPM_OPT_FLAGS -Wno-deprecated-declarations" popd %install +rm -rf $RPM_BUILD_ROOT pushd src make install PREFIX=$RPM_BUILD_ROOT%{_prefix} popd # below is the desktop file and icon stuff. mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications -desktop-file-install --dir $RPM_BUILD_ROOT%{_datadir}/applications \ +desktop-file-install --vendor fedora \ + --dir $RPM_BUILD_ROOT%{_datadir}/applications \ %{SOURCE1} -mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps +mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps install -p -m 644 %{SOURCE2} \ - $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps -mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata -install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/appdata -appstream-util validate-relax --nonet \ - $RPM_BUILD_ROOT%{_datadir}/appdata/%{name}.appdata.xml + $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%post +touch --no-create %{_datadir}/icons/hicolor || : +if [ -x %{_bindir}/gtk-update-icon-cache ]; then + %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : +fi + +%postun +touch --no-create %{_datadir}/icons/hicolor || : +if [ -x %{_bindir}/gtk-update-icon-cache ]; then + %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : +fi %files -%doc license.txt readme.txt alex4.ini +%defattr(-,root,root,-) +%doc license.txt readme.txt %{_bindir}/%{name} %{_datadir}/%{name} -%{_datadir}/appdata/%{name}.appdata.xml -%{_datadir}/applications/%{name}.desktop -%{_datadir}/icons/hicolor/64x64/apps/%{name}.png +%{_datadir}/applications/fedora-%{name}.desktop +%{_datadir}/icons/hicolor/32x32/apps/%{name}.png %changelog -* Fri Jan 16 2026 Fedora Release Engineering - 1.0-47 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Wed Jul 23 2025 Fedora Release Engineering - 1.0-46 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jan 16 2025 Fedora Release Engineering - 1.0-45 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jul 17 2024 Fedora Release Engineering - 1.0-44 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Jun 17 2024 Miroslav Suchý - 1.0-43 -- convert license to SPDX - -* Mon Jan 22 2024 Fedora Release Engineering - 1.0-42 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 1.0-41 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Wed Jul 19 2023 Fedora Release Engineering - 1.0-40 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed Jan 18 2023 Fedora Release Engineering - 1.0-39 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jul 20 2022 Fedora Release Engineering - 1.0-38 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Wed Jan 19 2022 Fedora Release Engineering - 1.0-37 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 1.0-36 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon Jan 25 2021 Fedora Release Engineering - 1.0-35 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Fri Jul 31 2020 Fedora Release Engineering - 1.0-34 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 1.0-33 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Feb 14 2020 Hans de Goede - 1.0-32 -- Fix FTBFS (rhbz#1799146) - -* Tue Jan 28 2020 Fedora Release Engineering - 1.0-31 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jul 24 2019 Fedora Release Engineering - 1.0-30 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 1.0-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Tue Jul 31 2018 Florian Weimer - 1.0-28 -- Rebuild with fixed binutils - -* Sun Jul 29 2018 Hans de Goede - 1.0-27 -- Fix FTBFS (rhbz#1603365) - -* Thu Jul 12 2018 Fedora Release Engineering - 1.0-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed Feb 07 2018 Fedora Release Engineering - 1.0-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sun Jan 07 2018 Igor Gnatenko - 1.0-24 -- Remove obsolete scriptlets - -* Fri Sep 08 2017 Hans de Goede - 1.0-23 -- Run windowed rather then fullscreen by default -- Add example alex4.ini to the documentation (for e.g. setting fullscreen mode) -- Add appdata - -* Wed Aug 02 2017 Fedora Release Engineering - 1.0-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.0-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 1.0-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Feb 03 2016 Fedora Release Engineering - 1.0-19 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Tue Jun 16 2015 Fedora Release Engineering - 1.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Fri Aug 15 2014 Fedora Release Engineering - 1.0-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sat Jun 07 2014 Fedora Release Engineering - 1.0-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sat Aug 03 2013 Fedora Release Engineering - 1.0-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Sat Feb 09 2013 Rahul Sundaram - 1.0-14 -- remove vendor tag from desktop file. https://fedorahosted.org/fpc/ticket/247 -- clean up spec to follow current guidelines - -* Wed Jul 18 2012 Fedora Release Engineering - 1.0-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu Jan 12 2012 Fedora Release Engineering - 1.0-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Fri Jul 15 2011 Hans de Goede - 1.0-11 -- Rebuild for new allegro-4.4 - -* Mon Feb 07 2011 Fedora Release Engineering - 1.0-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - * Fri Jul 24 2009 Fedora Release Engineering - 1.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild diff --git a/alex4src-warnings.patch b/alex4src-warnings.patch deleted file mode 100644 index 66bf30d..0000000 --- a/alex4src-warnings.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up alex4src/src/main.c~ alex4src/src/main.c ---- alex4src/src/main.c~ 2017-09-08 12:11:48.000000000 +0200 -+++ alex4src/src/main.c 2017-09-08 12:15:45.784592931 +0200 -@@ -452,7 +452,7 @@ void load_level_files(const char *filena - mode = 2; - } - else { -- char full_path_to_map[1024]; -+ char full_path_to_map[2048]; - - clear_trailing_whitespace(buf); - sprintf(full_path_to_map, "%s%s", path, buf); -@@ -2579,7 +2579,7 @@ int get_string(BITMAP *bmp, char *string - if (block == NULL) - return 1; - -- blit(bmp, block, pos_x - 1, pos_y - 1, 0, 0, block->w, block->h); -+ blit(bmp, block, pos_x - 1, pos_y - 1, 0, 0, block->w, block->h); - - clear_keybuf(); - while(1) { -diff -up alex4src/src/shooter.c~ alex4src/src/shooter.c ---- alex4src/src/shooter.c~ 2017-09-08 12:11:48.000000000 +0200 -+++ alex4src/src/shooter.c 2017-09-08 12:14:27.389952486 +0200 -@@ -903,7 +903,7 @@ void s_check_collision(Tspace_object *ar - s_var.score += 1000000; - } - else { // increase power -- s_var.power_level = MIN(s_var.power_level ++, 7); -+ s_var.power_level++; - } - play_sound_id(SMPL_HEART); -