summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-board/ace')
-rw-r--r--games-board/ace/Manifest1
-rw-r--r--games-board/ace/ace-1.4.ebuild49
-rw-r--r--games-board/ace/files/ace-1.4-CC.patch17
-rw-r--r--games-board/ace/files/ace-1.4-clang.patch15
-rw-r--r--games-board/ace/files/ace-1.4-gold.patch144
-rw-r--r--games-board/ace/files/ace-1.4-libpng15.patch29
-rw-r--r--games-board/ace/files/ace-1.4-no-xpm.patch24
-rw-r--r--games-board/ace/metadata.xml5
8 files changed, 284 insertions, 0 deletions
diff --git a/games-board/ace/Manifest b/games-board/ace/Manifest
new file mode 100644
index 000000000000..c222c30a0c92
--- /dev/null
+++ b/games-board/ace/Manifest
@@ -0,0 +1 @@
+DIST ace-1.4.tar.gz 530490 SHA256 1fee3b0533921a42873c0623f33d873a067b1eec58f2c70c01449146e79a4cce SHA512 cd382db95dc17d75a76809c7f1e096e14f5863c1166aa5db7f93204ce949a9ed21979212946b9d3a09667f4a93b30f4cc44a220940f9b5dd8996f28ecb4a6dcc WHIRLPOOL a6a4209f8a75943673f5c46eb093fcd4f8d7f4109f4286831fad9adac63a153065872e6cfbc397375b9e1bb4e51431a317339e2b29b7488f63746c77fd40ac2a
diff --git a/games-board/ace/ace-1.4.ebuild b/games-board/ace/ace-1.4.ebuild
new file mode 100644
index 000000000000..460940c42020
--- /dev/null
+++ b/games-board/ace/ace-1.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils games
+
+DESCRIPTION="DJ Delorie's Ace of Penguins solitaire games"
+HOMEPAGE="http://www.delorie.com/store/ace/"
+SRC_URI="http://www.delorie.com/store/ace/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ~sparc x86"
+IUSE=""
+
+RDEPEND="x11-libs/libX11
+ media-libs/libpng:0"
+DEPEND="${RDEPEND}
+ x11-proto/xproto"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-no-xpm.patch \
+ "${FILESDIR}"/${P}-libpng15.patch \
+ "${FILESDIR}"/${P}-gold.patch \
+ "${FILESDIR}"/${P}-CC.patch \
+ "${FILESDIR}"/${P}-clang.patch
+ eautoreconf
+}
+
+src_configure() {
+ egamesconf \
+ --disable-static \
+ --program-prefix=ace-
+}
+
+src_install() {
+ default
+ dohtml docs/*
+ newicon docs/as.gif ${PN}.gif
+ cd "${D}${GAMES_BINDIR}" || die
+ local p
+ for p in *
+ do
+ make_desktop_entry $p "Ace ${p/ace-/}" /usr/share/pixmaps/${PN}.gif
+ done
+ prepgamesdirs
+}
diff --git a/games-board/ace/files/ace-1.4-CC.patch b/games-board/ace/files/ace-1.4-CC.patch
new file mode 100644
index 000000000000..ec9045d25765
--- /dev/null
+++ b/games-board/ace/files/ace-1.4-CC.patch
@@ -0,0 +1,17 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Fri Jan 4 17:19:04 UTC 2013
+Subject: build system
+
+
+--- ace-1.4/lib/Makefile.am
++++ ace-1.4/lib/Makefile.am
+@@ -25,7 +25,7 @@
+ ./make-imglib -n cards -i $(srcdir)/png -d images.d $(srcdir)/images.in images.c
+
+ make-imglib : make-imglib.c
+- $(BUILD_CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(srcdir)/make-imglib.c -o make-imglib -lpng -lz
++ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(srcdir)/make-imglib.c -o make-imglib -lpng -lz
+
+ text2c : text2c.c
+- $(BUILD_CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(srcdir)/text2c.c -o text2c -lpng -lz
++ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(srcdir)/text2c.c -o text2c -lpng -lz
diff --git a/games-board/ace/files/ace-1.4-clang.patch b/games-board/ace/files/ace-1.4-clang.patch
new file mode 100644
index 000000000000..b021efe517de
--- /dev/null
+++ b/games-board/ace/files/ace-1.4-clang.patch
@@ -0,0 +1,15 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Fri Jan 4 17:41:20 UTC 2013
+Subject: fix build with clang
+
+--- ace-1.4/lib/make-imglib.c
++++ ace-1.4/lib/make-imglib.c
+@@ -202,7 +202,7 @@
+ char *rv;
+ if (string) {
+ next = string;
+- return;
++ return 0;
+ }
+ while (*next && !isgraph(*next)) next++;
+ if (!*next) return 0;
diff --git a/games-board/ace/files/ace-1.4-gold.patch b/games-board/ace/files/ace-1.4-gold.patch
new file mode 100644
index 000000000000..62665d61b880
--- /dev/null
+++ b/games-board/ace/files/ace-1.4-gold.patch
@@ -0,0 +1,144 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Tue Sep 25 13:18:57 UTC 2012
+Subject: build system
+
+fix gold linker compilation
+https://bugs.gentoo.org/show_bug.cgi?id=435826
+
+--- configure.in
++++ configure.in
+@@ -44,6 +44,9 @@
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
++AC_PATH_PROG([PKGCONFIG], [pkg-config])
++AS_IF([test "x$PKGCONFIG" = "x"],
++ [AC_MSG_ERROR([pkg-config not found!])])
+
+ AC_CHECK_PROGS(BUILD_CC,gcc cc ${CC},gcc)
+ AC_CHECK_PROG(AR,${AR:-ar},${AR:-ar},ar)
+@@ -55,6 +58,10 @@
+ dnl doesn't work if gd isn't where the compiler can find it
+ dnl AC_CHECK_LIB(gd, gdImageCreateFromGif)
+
++PKG_CHECK_MODULES([X], [x11])
++PKG_CHECK_MODULES([Z], [zlib])
++PKG_CHECK_MODULES([PNG], [libpng])
++
+ dnl Checks for header files.
+
+ AC_PATH_XTRA
+@@ -69,57 +76,6 @@
+ AC_FUNC_UTIME_NULL
+ AC_CHECK_FUNCS(gettimeofday mkdir strdup strstr)
+
+-opt_gd=
+-AC_ARG_WITH(z,[ --with-z=DIR location of the ZLIB library],opt_z=$withval)
+-AC_ARG_WITH(png,[ --with-png=DIR location of the PNG library],opt_png=$withval)
+-
+-case "$with_z" in
+- yes|no) AC_MSG_ERROR([
+-*** Directory must be specified for --with-z])
+- ;;
+- "")
+- Z_CFLAGS=
+- Z_LIBS=-lz
+- ;;
+- *)
+- if test -f $with_z/include/z.h
+- then
+- Z_CFLAGS=-I$with_z/include
+- else
+- Z_CFLAGS=-I$with_z
+- fi
+- if test -f $with_z/lib/libz.a
+- then
+- Z_LIBS=$with_z/lib/libz.a
+- else
+- Z_LIBS=$with_z/libz.a
+- fi
+- ;;
+-esac
+-
+-case "$with_png" in
+- yes|no) AC_MSG_ERROR([
+-*** Directory must be specified for --with-png])
+- ;;
+- "")
+- PNG_CFLAGS=
+- PNG_LIBS=
+- ;;
+- *)
+- if test -f $with_png/lib/png.h
+- then
+- PNG_CFLAGS=-I$with_png/lib
+- else
+- PNG_CFLAGS=-I$with_png/include/X11
+- fi
+- if test -f $with_png/lib/libPng.a
+- then
+- PNG_LIBS="-L$with_png/lib"
+- else
+- PNG_LIBS="-L$with_png"
+- fi
+- ;;
+-esac
+
+ AC_SUBST(Z_CFLAGS)
+ AC_SUBST(Z_LIBS)
+@@ -127,6 +83,9 @@
+ AC_SUBST(PNG_CFLAGS)
+ AC_SUBST(PNG_LIBS)
+
++AC_SUBST(X_LIBS)
++AC_SUBST(X_CFLAGS)
++
+ AC_SUBST(PDA)
+
+ AC_OUTPUT(Makefile lib/Makefile games/Makefile tests/Makefile)
+--- lib/Makefile.am
++++ lib/Makefile.am
+@@ -5,18 +5,19 @@
+
+ CLEANFILES = images.c images.d
+
+-INCLUDES = $(X_CFLAGS) @PDA@
+-AM_LDFLAGS = $(X_LIBS)
++INCLUDES = $(X_CFLAGS) $(PNG_CFLAGS) $(Z_CFLAGS) @PDA@
+
+ BUILD_CC = @BUILD_CC@
+ AR = @AR@
+ STRIP = @STRIP@
+
+-libcards_la_LDFLAGS = -version-info 1:0:0 $(AM_LDFLAGS)
++libcards_la_LDFLAGS = -version-info 1:0:0
+
+ libcards_la_SOURCES = table.c help.c stack.c imagelib.c xwin.c \
+ images.c table_rn.c funcs.c
+
++libcards_la_LIBADD = $(X_LIBS) $(PNG_LIBS) $(Z_LIBS)
++
+ # table_ai.c table_ck.c table_dc.c table_dg.c \
+ #table_dp.c table_in.c table_ky.c table_rd.c table_rs.c
+
+--- games/Makefile.am
++++ games/Makefile.am
+@@ -30,8 +30,7 @@
+
+ STRIP = @STRIP@
+
+-INCLUDES = -I$(srcdir)/../lib $(X_CFLAGS) @PDA@
+-AM_LDFLAGS = $(X_LIBS)
++INCLUDES = -I$(srcdir)/../lib @PDA@
+
+ canfield_SOURCES = canfield.c canfield-img.c
+ freecell_SOURCES = freecell.c freecell-help.c freecell-img.c
+@@ -52,7 +51,7 @@
+ solitaire-help.c solitaire-img.c spider-help.c spider-img.c \
+ taipedit-help.c taipedit-img.c taipei-help.c taipei-img.c
+
+-LDADD = ../lib/libcards.la -lpng -lz -lX11 -lm
++LDADD = ../lib/libcards.la -lm
+
+ EXTRA_DIST = $(wildcard *.png) $(wildcard *.tp)
+
diff --git a/games-board/ace/files/ace-1.4-libpng15.patch b/games-board/ace/files/ace-1.4-libpng15.patch
new file mode 100644
index 000000000000..f0ec4e9f6359
--- /dev/null
+++ b/games-board/ace/files/ace-1.4-libpng15.patch
@@ -0,0 +1,29 @@
+--- lib/make-imglib.c
++++ lib/make-imglib.c
+@@ -86,7 +86,7 @@
+ png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, 0, 0, 0);
+ info_ptr = png_create_info_struct (png_ptr);
+
+- if (setjmp (png_ptr->jmpbuf)) {
++ if (setjmp (png_jmpbuf(png_ptr))) {
+ fclose (f);
+ continue;
+ }
+--- lib/xwin.c
++++ lib/xwin.c
+@@ -824,13 +824,13 @@
+ png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, 0, 0, 0);
+ info_ptr = png_create_info_struct (png_ptr);
+
+- if (setjmp (png_ptr->jmpbuf)) {
++ if (setjmp (png_jmpbuf(png_ptr))) {
+ fprintf(stderr, "Invalid PNG image!\n");
+ return;
+ }
+
+ file_bytes = src->file_data;
+- png_set_read_fn (png_ptr, (voidp)&file_bytes, (png_rw_ptr)png_reader);
++ png_set_read_fn (png_ptr, (png_voidp)&file_bytes, (png_rw_ptr)png_reader);
+
+ png_read_info (png_ptr, info_ptr);
+
diff --git a/games-board/ace/files/ace-1.4-no-xpm.patch b/games-board/ace/files/ace-1.4-no-xpm.patch
new file mode 100644
index 000000000000..25b06754be42
--- /dev/null
+++ b/games-board/ace/files/ace-1.4-no-xpm.patch
@@ -0,0 +1,24 @@
+--- lib/table.c.orig 2008-01-15 15:05:27.000000000 -0500
++++ lib/table.c 2010-09-29 17:34:40.925310980 -0400
+@@ -23,7 +23,6 @@
+ #include <X11/Xutil.h>
+ #include <X11/keysym.h>
+ #include <X11/Xatom.h>
+-#include <X11/xpm.h>
+
+ #define CD printf("%d: %d %d %d %d\n", __LINE__, ex, ey, ew, eh)
+ #undef CD
+@@ -165,13 +164,6 @@
+ xwin_create (width, height);
+ }
+
+-typedef struct PicRec {
+- Pixmap pixmap;
+- Pixmap mask;
+- char **xpm_data;
+- int image_table_index;
+-} PicRec;
+-
+ int get_picture_default_width = CARD_WIDTH;
+ int get_picture_default_height = CARD_HEIGHT;
+
diff --git a/games-board/ace/metadata.xml b/games-board/ace/metadata.xml
new file mode 100644
index 000000000000..d3c2cc926f0b
--- /dev/null
+++ b/games-board/ace/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>games</herd>
+</pkgmetadata>