commit:     046b1e62732799f3c784058619cbe3e34085ffa3
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 12 22:04:24 2024 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Wed Jun 12 22:05:26 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=046b1e62

games-puzzle/icebreaker: Bump to 2.2.2_p20231115, drop old 1.9.6-r1

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-puzzle/icebreaker/Manifest                   |   2 +-
 .../icebreaker/files/icebreaker-1.9.6-gentoo.patch | 247 ---------------------
 .../files/icebreaker-1.9.6-ldflags.patch           |  28 ---
 .../icebreaker/files/icebreaker-1.9.6-ovfl.patch   |  20 --
 .../files/icebreaker-1.9.6-parallell-install.patch |  34 ---
 .../icebreaker-2.2.2_p20231115-makefile.patch      |  70 ++++++
 games-puzzle/icebreaker/icebreaker-1.9.6-r1.ebuild |  48 ----
 .../icebreaker/icebreaker-2.2.2_p20231115.ebuild   |  52 +++++
 games-puzzle/icebreaker/metadata.xml               |  11 +-
 9 files changed, 130 insertions(+), 382 deletions(-)

diff --git a/games-puzzle/icebreaker/Manifest b/games-puzzle/icebreaker/Manifest
index 0b16c6b7faaf..a84be44c93f1 100644
--- a/games-puzzle/icebreaker/Manifest
+++ b/games-puzzle/icebreaker/Manifest
@@ -1 +1 @@
-DIST icebreaker-1.9.6.tgz 137333 BLAKE2B 
3fdfde734f868493313a2a7b018582f79d6140fa71c1802a27b558d2973968eb9cc01efb55c0b5a45d95cd4d1bc94b66f74809a82853d6d8c0ce1b7bf767e362
 SHA512 
c3b085dc42d33757011d6d526016477312c5e1cbab4c5584c1e271a1e43b40d61ad1e7f0c96c8f41348550b2e198b3ee7bca65fbef90125dbfa32544cbdf357b
+DIST icebreaker-2.2.2_p20231115.tar.gz 538930 BLAKE2B 
a3f8a1c1c280c260c8fc1b8060575b000a30535e83bd2033fe68726bf02f31cb213c9a46af5fdd89c7d7c042053cd98b037d69b924daeec985b2f04645d10e9d
 SHA512 
02174b8c57578dc269693ad2ce3ebae756490dd55c9f738a1e8dd75b868b6fafc14c7f0e62c5fc49bca797376a0957a647fc9d7c5f4005cdd7cdf7df637567b0

diff --git a/games-puzzle/icebreaker/files/icebreaker-1.9.6-gentoo.patch 
b/games-puzzle/icebreaker/files/icebreaker-1.9.6-gentoo.patch
deleted file mode 100644
index 846d5b4141bc..000000000000
--- a/games-puzzle/icebreaker/files/icebreaker-1.9.6-gentoo.patch
+++ /dev/null
@@ -1,247 +0,0 @@
---- a/dialog.c
-+++ b/dialog.c
-@@ -279,10 +279,10 @@ PopupReturnType popuphighscores()
- 
-       for (i=0;i<HISCORENUM;i++)
-       {
--              snprintf(buf,4,"%d.",i+1);
-+              snprintf(buf,sizeof(buf),"%d.",i+1);
-               
puttext(scorelistrect.x+BLOCKWIDTH,scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,buf);
               
-               
puttext(scorelistrect.x+BLOCKWIDTH*4,scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,hiscorename[i]);
          
--              snprintf(buf,30,"%ld",hiscoreval[i]);           
-+              snprintf(buf,sizeof(buf),"%ld",hiscoreval[i]);          
-               
puttext(scorelistrect.x+scorelistrect.w-(BLOCKWIDTH*5),scorelistrect.y+45+i*(CHARHEIGHT*2+5),2,color.normaltext,buf);
-       }
-       
-@@ -364,7 +364,7 @@ PopupReturnType popuphelp()
-       {
-               
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+BLOCKHEIGHT/2+i*(CHARHEIGHT*2+4),2,color.normaltext,helptext[i]);
            
-       }
--      snprintf(buf,80,"v%d.%d.%d   %s",VERMAJOR,VERMINOR,VERSUB,"Copyright 
(c) 2000-2002 Matthew Miller. Released under the GPL.");
-+      snprintf(buf,sizeof(buf),"v%d.%d.%d   
%s",VERMAJOR,VERMINOR,VERSUB,"Copyright (c) 2000-2002 Matthew Miller. Released 
under the GPL.");
-       
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+helprect.h-CHARHEIGHT*3,1,color.copyrighttext,buf);
          
-       
puttext(helprect.x+BLOCKWIDTH/2,helprect.y+helprect.h-CHARHEIGHT*1-3,1,color.copyrighttext,"Thanks
 to my wonderful wife Karen for inspiration (and for patience)!");            
-       
---- a/menu.c
-+++ b/menu.c
-@@ -193,12 +193,12 @@ PopupReturnType popupoptionsmenu()
- 
-       if (strlen(commandline.theme)>0)
-       {
--              
snprintf(originaltheme,MAXTHEMENAMELENGTH+1,"%s",commandline.theme);
-+              
snprintf(originaltheme,sizeof(originaltheme),"%s",commandline.theme);
-               originalthemecl=true;
-       }
-       else
-       {
--              snprintf(originaltheme,MAXTHEMENAMELENGTH+1,"%s",options.theme);
-+              
snprintf(originaltheme,sizeof(originaltheme),"%s",options.theme);
-               originalthemecl=false;  
-       }
-                               
-@@ -521,7 +521,7 @@ PopupReturnType menuitem_theme(char * va
-               if (((mbutton==1 || mbutton==4) && t==themecount-1) || 
((mbutton!=1 && mbutton!=4) && t==0))
-               { // "random", at the end/beginning of the list
-                       
--                      strncpy(val,"random",MAXMENUVALUELENGTH);
-+                      strcpy(options.theme,"random");
-                       snprintf(options.theme,MAXMENUVALUELENGTH,"random");
-                       
-                       settheme("linux"); // just for pretty
-@@ -538,7 +538,7 @@ PopupReturnType menuitem_theme(char * va
-                       if (mbutton==1 || mbutton==4) // left click or scroll 
forwards
-                       {
-                               
strncpy(val,themelist[(t+1)%themecount],MAXMENUVALUELENGTH);
--                              
snprintf(options.theme,MAXMENUVALUELENGTH,themelist[(t+1)%themecount]);
-+                              
snprintf(options.theme,sizeof(options.theme),"%s",themelist[(t+1)%themecount]);
-                       }
-                       else // right or middle or scroll back
-                       {
---- a/hiscore.c
-+++ b/hiscore.c
-@@ -72,7 +72,7 @@
-       // make sure all entries are zeroed out to start.
-       for (i=0;i<HISCORENUM;i++)
-       {
--              snprintf(temphiscorename[i],7,"Nobody");
-+              strcpy(temphiscorename[i],"Nobody");
-               temphiscoreval[i]=100; //100 is better than 0. :)
-       }
- 
-@@ -103,7 +103,7 @@
-       // ok, so now, we can copy things over in the proper sorted order
-       for (i=0;i<HISCORENUM;i++)
-       {
--              snprintf(hiscorename[i],50,temphiscorename[arrayindex[i]]);
-+              snprintf(hiscorename[i],50,"%s",temphiscorename[arrayindex[i]]);
-               hiscoreval[i]=temphiscoreval[arrayindex[i]];
-       }
- 
-@@ -201,13 +201,13 @@
-       // make sure the temp array contains the right data
-       for (i=0;i<HISCORENUM;i++)
-       {
--              snprintf(temphiscorename[i],50,hiname[i]);
-+              snprintf(temphiscorename[i],50,"%s",hiname[i]);
-               temphiscoreval[i]=hival[i];
-       }
-       
-       // and toss in the new data 
-       //(this is why these arrays are size HISCORENUM+1)
--      snprintf(temphiscorename[HISCORENUM],50,username);
-+      snprintf(temphiscorename[HISCORENUM],50,"%s",username);
-       temphiscoreval[HISCORENUM]=score;
- 
-       // fill the "helper" array. 
-@@ -221,7 +221,7 @@
-       // and take the top ones back.
-       for (i=0;i<HISCORENUM;i++)
-       {
--              snprintf(hiname[i],50,temphiscorename[arrayindex[i]]); 
-+              snprintf(hiname[i],50,"%s",temphiscorename[arrayindex[i]]); 
-               hival[i]=temphiscoreval[arrayindex[i]];
-       }
- }
---- a/line.c
-+++ b/line.c
-@@ -30,8 +30,9 @@
- 
- Line createline(int linenum)
- {
--      Line l;
-+      static Line l;
- 
-+      memset(&l, 0, sizeof(l));
-       switch (linenum)
-       {
-               case 1: 
---- a/options.c
-+++ b/options.c
-@@ -66,7 +66,7 @@
-       options.autopause=AUTOPAUSEOFF; 
-       options.difficulty=NORMAL;
-       options.fullscreen=FULLSCREENOFF;
--      snprintf(options.theme,MAXTHEMENAMELENGTH+1,"linux");
-+      strcpy(options.theme,"linux");
- }
- 
- int readoptions(void)
-@@ -81,7 +81,7 @@
- 
-       setdefaultoptions();
-       
--      snprintf(filename,255,"%s/%s",homedir,OPTIONFILE);
-+      snprintf(filename,sizeof(filename),"%s/%s",homedir,OPTIONFILE);
-       
-       optionfile=fopen(filename,"r");
-       if (optionfile==NULL)
-@@ -135,7 +135,7 @@
-                       }
-                       else if (!strcmp(optbuf,"theme"))
-                       {
--                              
snprintf(options.theme,MAXTHEMENAMELENGTH+1,"%s",valbuf);
-+                              
snprintf(options.theme,sizeof(options.theme),"%s",valbuf);
-                       }
-                       // FIX: add username
-               }
-@@ -150,7 +150,7 @@
- {
-       FILE * optionfile;
-       char filename[255];
--      snprintf(filename,255,"%s/%s",homedir,OPTIONFILE);
-+      snprintf(filename,sizeof(filename),"%s/%s",homedir,OPTIONFILE);
-       
-       optionfile=fopen(filename,"w");
-       if (optionfile==NULL)
-@@ -292,7 +292,7 @@
-                       else
-                       {
-                               // fix -- we should probably search for 
malicious characters here.
--                              
snprintf(commandline.theme,MAXTHEMENAMELENGTH+1,"%s",argv[i]+strlen(FLAGTHEME));
-+                              
snprintf(commandline.theme,sizeof(commandline.theme),"%s",argv[i]+strlen(FLAGTHEME));
-                       }       
-               }
-               else if (strncmp(argv[i],FLAGTHEMELONG "=" 
,strlen(FLAGTHEMELONG "=")) == 0)
-@@ -312,7 +312,7 @@
-                       else
-                       {
-                               // fix -- we should probably search for 
malicious characters here.
--                              
snprintf(commandline.theme,MAXTHEMENAMELENGTH+1,"%s",argv[i]+strlen(FLAGTHEMELONG
 "="));
-+                              
snprintf(commandline.theme,sizeof(commandline.theme),"%s",argv[i]+strlen(FLAGTHEMELONG
 "="));
-                       }       
-               }
-               else if (strncmp(argv[i],FLAGTHEMELONG,strlen(FLAGTHEMELONG)) 
== 0)
---- a/penguin.c
-+++ b/penguin.c
-@@ -40,8 +40,9 @@
- 
- Penguin createpenguinxy(int x, int y)
- {
--      Penguin p;
-+      static Penguin p;
- 
-+      memset(&p, 0, sizeof(p));
-       switch (random() % 4)
-       {
-               case 0:
---- a/themes.c
-+++ b/themes.c
-@@ -183,7 +183,7 @@
- 
-       foundcolor.spritetransparent = 0;
-       
--      snprintf(themefilename, 
256,"%s/%s%s",DATAPREFIX,themename,THEMEFILEEXTENSION);
-+      snprintf(themefilename, 
sizeof(themefilename),"%s/%s%s",DATAPREFIX,themename,THEMEFILEEXTENSION);
-       
-       themefile=fopen(themefilename,"r");
-       if (themefile==NULL)
-@@ -329,7 +329,7 @@
-                                                              "We'll try to 
load it anyway, but don't be surpised if there's a problem.\n"
-                                                              "(Filename is 
%s)\n",themename,valbuf);
-                                       }
--                                      snprintf(loadfilebuf, 
256,"%s/%s",DATAPREFIX,valbuf);
-+                                      snprintf(loadfilebuf, 
sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
-                                       
spriteimage=loadsprite(themename,loadfilebuf);
-                               }
-                               else if (!strcmp(optbuf,"spritemirrorbitmap"))
-@@ -340,7 +340,7 @@
-                                                              "We'll try to 
load it anyway, but don't be surpised if there's a problem.\n"
-                                                              "(Filename is 
%s)\n",themename,valbuf);
-                                       }
--                                      snprintf(loadfilebuf, 
256,"%s/%s",DATAPREFIX,valbuf);
-+                                      snprintf(loadfilebuf, 
sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
-                                       
spritemirrorimage=loadsprite(themename,loadfilebuf);
-                               }
-                               else if (!strcmp(optbuf,"soundouch"))
-@@ -351,7 +351,7 @@
-                                                              "We'll try to 
load it anyway, but don't be surpised if there's a problem.\n"
-                                                              "(Filename is 
%s)\n",themename,valbuf);
-                                       }
--                                      snprintf(loadfilebuf, 
256,"%s/%s",DATAPREFIX,valbuf);
-+                                      snprintf(loadfilebuf, 
sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
-                                       loadsounds(themename,loadfilebuf,NULL);
-                               }
-                               else if (!strcmp(optbuf,"soundcrash"))
-@@ -362,7 +362,7 @@
-                                                              "We'll try to 
load it anyway, but don't be surpised if there's a problem.\n"
-                                                              "(Filename is 
%s)\n",themename,valbuf);
-                                       }
--                                      snprintf(loadfilebuf, 
256,"%s/%s",DATAPREFIX,valbuf);
-+                                      snprintf(loadfilebuf, 
sizeof(loadfilebuf),"%s/%s",DATAPREFIX,valbuf);
-                                       loadsounds(themename,NULL,loadfilebuf);
-                               }
-                       }
-@@ -474,11 +474,11 @@
-       {
-               fprintf(stderr,"Hey! You can't have a theme named random! 
Please remove the random.ibt\n"
-                       "file from your themes directory.\n");
--              snprintf(themename,MAXTHEMENAMELENGTH+1,"linux");
-+              strcpy(themename,"linux");
-       }
-       else
-       {
--              snprintf(themename,MAXTHEMENAMELENGTH+1,themelist[random() 
%themecount]);
-+              snprintf(themename,sizeof(themename),"%s",themelist[random() 
%themecount]);
-       }
-       freethemenames(&themelist,themecount);
-       return settheme(themename);

diff --git a/games-puzzle/icebreaker/files/icebreaker-1.9.6-ldflags.patch 
b/games-puzzle/icebreaker/files/icebreaker-1.9.6-ldflags.patch
deleted file mode 100644
index 93b40fc67687..000000000000
--- a/games-puzzle/icebreaker/files/icebreaker-1.9.6-ldflags.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- a/Makefile.orig    2010-10-11 12:20:01.274684641 -0400
-+++ b/Makefile 2010-10-11 12:22:02.256897083 -0400
-@@ -1,5 +1,3 @@
--CC=gcc
--
- SDLCONFIG=sdl-config
- 
- ifndef prefix
-@@ -177,7 +175,7 @@
-       [ -d win32.build ] && rm -rf win32.build || true
- 
- icebreaker:   $(SRC:.c=.o)
--      $(CC) $(CFLAGS) $^ -o icebreaker $(SDL_LIB)
-+      $(CC) $(LDFLAGS) $(CFLAGS) $^ -o icebreaker $(SDL_LIB)
- 
- man: icebreaker.6
- 
-@@ -202,8 +200,8 @@
-       install -m 644 *.wav *.bmp $(datadir)/icebreaker
- 
- install-bin: icebreaker
--      install -s -g games -m 2755 icebreaker $(bindir) || \
--        install -s -m 755 icebreaker $(bindir)
-+      install -g games -m 2755 icebreaker $(bindir) || \
-+        install -m 755 icebreaker $(bindir)
-       @test -g $(bindir)/icebreaker || \
-         echo -e '*** Note: icebreaker binary not installed set-group-ID 
"games" -- shared\n*** highscores may be impossible. (Try installing as root.)'
- 

diff --git a/games-puzzle/icebreaker/files/icebreaker-1.9.6-ovfl.patch 
b/games-puzzle/icebreaker/files/icebreaker-1.9.6-ovfl.patch
deleted file mode 100644
index 5e8ffc01d8d2..000000000000
--- a/games-puzzle/icebreaker/files/icebreaker-1.9.6-ovfl.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/menu.c.old       2013-06-24 22:09:11.606750080 +0200
-+++ b/menu.c   2013-06-24 22:25:51.635735351 +0200
-@@ -522,7 +522,7 @@
-               { // "random", at the end/beginning of the list
-                       
-                       strcpy(options.theme,"random");
--                      snprintf(options.theme,MAXMENUVALUELENGTH,"random");
-+                      snprintf(options.theme,MAXTHEMENAMELENGTH,"random");
-                       
-                       settheme("linux"); // just for pretty
-                       
-@@ -544,7 +544,7 @@
-                       {
-                               if (t<0) t=themecount;
-                               
strncpy(val,themelist[(t-1)%themecount],MAXMENUVALUELENGTH);
--                              
snprintf(options.theme,MAXMENUVALUELENGTH,themelist[(t-1)%themecount]);
-+                              
snprintf(options.theme,MAXTHEMENAMELENGTH,"%s",themelist[(t-1)%themecount]);
-                       }
-                       
-                       settheme(options.theme);

diff --git 
a/games-puzzle/icebreaker/files/icebreaker-1.9.6-parallell-install.patch 
b/games-puzzle/icebreaker/files/icebreaker-1.9.6-parallell-install.patch
deleted file mode 100644
index 419262791d98..000000000000
--- a/games-puzzle/icebreaker/files/icebreaker-1.9.6-parallell-install.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/Makefile.old     2010-10-19 10:26:18.000000000 +0200
-+++ b/Makefile 2010-10-19 10:38:28.000000000 +0200
-@@ -196,26 +196,30 @@
- themes-install: install-themes
- 
- install-themes:
-+      mkdir -p $(datadir)/icebreaker
-       install -m 644 *.ibt $(datadir)/icebreaker
-       install -m 644 *.wav *.bmp $(datadir)/icebreaker
- 
- install-bin: icebreaker
-+      mkdir -p $(bindir)
-       install -g games -m 2755 icebreaker $(bindir) || \
-         install -m 755 icebreaker $(bindir)
-       @test -g $(bindir)/icebreaker || \
-         echo -e '*** Note: icebreaker binary not installed set-group-ID 
"games" -- shared\n*** highscores may be impossible. (Try installing as root.)'
- 
- install-man: icebreaker.6
-+      mkdir -p $(mandir)/man6
-       install -m 644 icebreaker.6 $(mandir)/man6
- 
- install-scorefile:
-+      mkdir -p $(highscoredir)
-       touch $(highscoredir)/icebreaker.scores
-       chown -f games:games $(highscoredir)/icebreaker.scores && \
-       chmod 664 $(highscoredir)/icebreaker.scores || \
-       chmod 644 $(highscoredir)/icebreaker.scores
- 
- 
--install: all install-mkdirs install-themes install-bin install-man 
install-scorefile
-+install: install-themes install-bin install-man install-scorefile
- 
- %.d: %.c
-       set -e; $(CC) -M $(CFLAGS) $< \

diff --git 
a/games-puzzle/icebreaker/files/icebreaker-2.2.2_p20231115-makefile.patch 
b/games-puzzle/icebreaker/files/icebreaker-2.2.2_p20231115-makefile.patch
new file mode 100644
index 000000000000..4fec6a700f3d
--- /dev/null
+++ b/games-puzzle/icebreaker/files/icebreaker-2.2.2_p20231115-makefile.patch
@@ -0,0 +1,70 @@
+From a5950b94d56f6e35c3dca2e1ad2ff334aacaa070 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <ch...@gentoo.org>
+Date: Wed, 12 Jun 2024 22:50:15 +0100
+Subject: [PATCH 1/2] Don't include -Werror in CFLAGS
+
+Distributions don't like -Werror because it prevents end users from
+building the software using newer compilers that may raise warnings you
+don't know about yet. This is particularly bad for source-based
+distributions like Gentoo.
+---
+ Makefile     | 2 +-
+ Makefile.w32 | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 686e636..808b36b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -20,7 +20,7 @@ ifndef bindir
+ endif
+ 
+ 
+-CFLAGS+=-Wall -Werror $(OPTIMIZE) $(SDL_CFLAGS) 
-DDATAPREFIX=\"$(datadir)/icebreaker\"
++CFLAGS+=-Wall $(OPTIMIZE) $(SDL_CFLAGS) -DDATAPREFIX=\"$(datadir)/icebreaker\"
+ 
+ SRC=icebreaker.c cursor.c grid.c laundry.c line.c penguin.c sound.c \
+     level.c intro.c text.c status.c transition.c hiscore.c dialog.c \
+diff --git a/Makefile.w32 b/Makefile.w32
+index 92f60c5..17dd71a 100644
+--- a/Makefile.w32
++++ b/Makefile.w32
+@@ -12,7 +12,7 @@ ifndef OPTIMIZE
+   OPTIMIZE=-O2
+ endif
+ 
+-CFLAGS=-Wall -Werror -Wno-error=pointer-sign $(OPTIMIZE) $(SDL_CFLAGS) 
-DDATAPREFIX=\".\" -DHISCOREPREFIX=\".\" -DWIN32 -fstack-protector
++CFLAGS+=-Wall -Wno-error=pointer-sign $(OPTIMIZE) $(SDL_CFLAGS) 
-DDATAPREFIX=\".\" -DHISCOREPREFIX=\".\" -DWIN32 -fstack-protector
+ 
+ SRC=icebreaker.c cursor.c grid.c laundry.c line.c penguin.c sound.c \
+     level.c intro.c text.c status.c transition.c hiscore.c dialog.c \
+-- 
+2.45.1
+
+
+From 6ee6046bf1f9893a3c4bfd239871b3296c90b047 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <ch...@gentoo.org>
+Date: Wed, 12 Jun 2024 22:54:52 +0100
+Subject: [PATCH 2/2] Include LDFLAGS earlier in the linking command
+
+Some flags need to come before the inputs in order to be effective.
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 808b36b..45a7035 100644
+--- a/Makefile
++++ b/Makefile
+@@ -173,7 +173,7 @@ icebreaker.exe: $(DISTFILES)
+       [ -d win32.build ] && rm -rf win32.build || true
+ 
+ icebreaker:   $(SRC:.c=.o)
+-      $(CC) $(CFLAGS) $^ -o icebreaker $(SDL_LIB) $(LDFLAGS)
++      $(CC) $(CFLAGS) $(LDFLAGS) $^ -o icebreaker $(SDL_LIB)
+ 
+ man: icebreaker.6
+ 
+-- 
+2.45.1
+

diff --git a/games-puzzle/icebreaker/icebreaker-1.9.6-r1.ebuild 
b/games-puzzle/icebreaker/icebreaker-1.9.6-r1.ebuild
deleted file mode 100644
index 6f45f0b3cd13..000000000000
--- a/games-puzzle/icebreaker/icebreaker-1.9.6-r1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit desktop eapi7-ver
-
-DESCRIPTION="Trap and capture penguins on Antarctica"
-HOMEPAGE="http://www.mattdm.org/icebreaker/";
-SRC_URI="http://www.mattdm.org/${PN}/$(ver_cut 1-2).x/${P}.tgz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="
-       media-libs/libsdl[video]
-       media-libs/sdl-mixer
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
-       "${FILESDIR}"/${P}-ldflags.patch
-       "${FILESDIR}"/${P}-gentoo.patch
-       "${FILESDIR}"/${P}-parallell-install.patch
-       "${FILESDIR}"/${P}-ovfl.patch
-)
-
-src_compile() {
-       emake \
-               OPTIMIZE="${CFLAGS}" \
-               prefix=/usr \
-               bindir=/usr/bin \
-               datadir=/usr/share \
-               highscoredir="/var"
-}
-
-src_install() {
-       emake \
-               prefix="${D}/usr" \
-               bindir="${D}/usr/bin" \
-               datadir="${D}/usr/share" \
-               highscoredir="${D}/var" install
-
-       newicon ${PN}_48.bmp ${PN}.bmp
-       make_desktop_entry ${PN} IceBreaker /usr/share/pixmaps/${PN}.bmp
-       einstalldocs
-}

diff --git a/games-puzzle/icebreaker/icebreaker-2.2.2_p20231115.ebuild 
b/games-puzzle/icebreaker/icebreaker-2.2.2_p20231115.ebuild
new file mode 100644
index 000000000000..0dc47653992d
--- /dev/null
+++ b/games-puzzle/icebreaker/icebreaker-2.2.2_p20231115.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop toolchain-funcs
+
+COMMIT="7180612a54b42a5f52e15238d7ddf64f0b879e51"
+DESCRIPTION="Trap and capture penguins on Antarctica"
+HOMEPAGE="https://mattdm.org/icebreaker/";
+SRC_URI="https://github.com/mattdm/icebreaker/archive/${COMMIT}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+       media-libs/libsdl[video]
+       media-libs/sdl-mixer
+"
+
+DEPEND="
+       ${RDEPEND}
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-makefile.patch
+)
+
+src_compile() {
+       emake \
+               prefix="${EPREFIX}"/usr \
+               bindir="${EPREFIX}"/usr/bin \
+               datadir="${EPREFIX}"/usr/share \
+               highscoredir="${EPREFIX}"/var \
+               CC="$(tc-getCC)" \
+               PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+               OPTIMIZE=
+}
+
+src_install() {
+       emake \
+               prefix="${ED}"/usr \
+               bindir="${ED}"/usr/bin \
+               datadir="${ED}"/usr/share \
+               highscoredir="${ED}"/var \
+               install
+
+       newicon ${PN}_48.bmp ${PN}.bmp
+       make_desktop_entry ${PN} IceBreaker /usr/share/pixmaps/${PN}.bmp
+       einstalldocs
+}

diff --git a/games-puzzle/icebreaker/metadata.xml 
b/games-puzzle/icebreaker/metadata.xml
index 1c3ba213c494..3cb3b8da70ed 100644
--- a/games-puzzle/icebreaker/metadata.xml
+++ b/games-puzzle/icebreaker/metadata.xml
@@ -1,8 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
-<maintainer type="project">
-       <email>ga...@gentoo.org</email>
-       <name>Gentoo Games Project</name>
-</maintainer>
+       <maintainer type="project">
+               <email>ga...@gentoo.org</email>
+               <name>Gentoo Games Project</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="github">mattdm/icebreaker</remote-id>
+       </upstream>
 </pkgmetadata>

Reply via email to