summaryrefslogtreecommitdiff
path: root/media-libs/sge
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-libs/sge
reinit the tree, so we can have metadata
Diffstat (limited to 'media-libs/sge')
-rw-r--r--media-libs/sge/Manifest8
-rw-r--r--media-libs/sge/files/sge-030809-build.patch123
-rw-r--r--media-libs/sge/files/sge-030809-cmap.patch28
-rw-r--r--media-libs/sge/files/sge-030809-freetype.patch25
-rw-r--r--media-libs/sge/metadata.xml11
-rw-r--r--media-libs/sge/sge-030809.ebuild55
6 files changed, 250 insertions, 0 deletions
diff --git a/media-libs/sge/Manifest b/media-libs/sge/Manifest
new file mode 100644
index 000000000000..da90e22c76b3
--- /dev/null
+++ b/media-libs/sge/Manifest
@@ -0,0 +1,8 @@
+AUX sge-030809-build.patch 4020 SHA256 53f8e2ab8080f14edfed161055f01ccc94a1d44c7e478ce40fc0dcbd794d4f94 SHA512 e6824fcd18226f416289ad96b2774f5f3339fe9feda1a77d797f5d0e229c4bb65b06ed3e92b00db4e12c8343b5c1bb1d7a208b3acfae7ca8001fac7666d9d029 WHIRLPOOL 41238b200c490ee0d87e041146c6a68e6894fb1d5f0b372c733ac7e42ecab2531f3b9cbf430daa907a5cbb47500f872f15cc05861461b6040a098dbb33950b26
+AUX sge-030809-cmap.patch 684 SHA256 264bf8966bdb13a47491af1e4417e31a7f8e94ece40c30a1f2d94b95d9e120f5 SHA512 adf9018c09c8e2581d1693cee28224b65c605f95a8df333ab9f50fe14668b501d1e3ce39b91b43216f67f1d107c167b77be8aa28a9025b95ec8ea025e9d6a43e WHIRLPOOL b62c9a34228460f8d782d3bd37e7958fa18d573f89bc77d48b7fb6c94008932ecb90e85eb617755ba7b9c97d186c2fc817b20c5e4685cce1f757e7fdda8b4364
+AUX sge-030809-freetype.patch 621 SHA256 a537b98f3282881393ce6270a91564b4554eaec0ef9eacd51ea4b07048f80d79 SHA512 6a0d22209d047f607b4409519798947a06e0baa15ca628134fe1b503c90fa691274a5fa8a23f30a696f97cc74adb3ea0a2f75daa38e97454c579f223119c7e04 WHIRLPOOL 35541594d119af56e80e15ccaea099fc3a5b80a920ca9bbf83461c48fa8bb93ecaf8d04bf3795f39f59f596680398d9389b4d63da98ed0be38e512c8c0b537ae
+DIST sge030809.tar.gz 251698 SHA256 25cfbe59ab99647254e69d25984707045492c2a5d1b15f27d999d0284a7110fc SHA512 59144d573f254cc451a22a2d60ba68c7d9437b5095f63fc7ec36c21c3caf7580c5365267a004e08b9d08cf187a59ddefb76a5829f4a6aa1ff4d45f7d044bb2fb WHIRLPOOL 627a67c5092fe1e3c313b9fa3588ad28f2d10a9dccbce2705847274f33195579f2e98e39f2ef1c7a82c80d8cb32a02ebf31ee9822f0975de3de19b4ce427db0d
+EBUILD sge-030809.ebuild 1209 SHA256 aa40a1bac324b9a0e547dde0bea207a4fda8cc95648e1aa55d1ebab805680318 SHA512 5625b1f3ffb06898224a8269822f91a48986f95fc39bc291deb8c99fadeea22fcb0ad04f91ca7bbc60122c376535d295dc4b164da0fe326a49cae2f7c1793b27 WHIRLPOOL c5c9e109cd4726cc28fae079d792ebc357c1c90470b4b76e1511ad82326c4e7f4d6a73f684b8d9cd14df56331b794b4743696a4b234e049c275d6327b19aface
+MISC ChangeLog 2516 SHA256 4fbce72ed99d0206dfaa3bc784e748d30447f8f10537f8debef9d45df4488c2f SHA512 54f2a40582b2d0db352b53be9dcdb6325a9e48e755360c8968e9cc47d7f679b5da51d5992e807bdc557254914987b9ad36f76324d045ee15218c418db1c916a0 WHIRLPOOL db00b04e1b58306bed55ad4e61ade48b1ec5ee80fbbb7fa9673b73503e762e8a049ca73cb9f838f97a8f921a61e8e07c6834ad976769963197104da1ef263ebc
+MISC ChangeLog-2015 1298 SHA256 f16ea56beaf4637d4df1f9542c5e382d1bdef2dd9499f09b69bd77373ac4eddd SHA512 903ec87da789093fe0bfd9e292583b37fbc94e36400bc6d29a604bd52a44310b67283f5facb4e9144c82852aa8ee60a23cac687fbf38d483c3e62fd3fa0175b1 WHIRLPOOL 3dffc19e22c233578179106a74541d5b9ff4fb857e75052fad39b34345fbcc1b12affe640cc1267704e6b5edc1f6dd2c6c622a77d0b2d0de07ade9b8e29d7f50
+MISC metadata.xml 331 SHA256 5cd134c8be596b5c354481f7e71b57aa080e4d2edcbfe6f54b15ba72eab6c91f SHA512 65e4d002bc5d040804fd5b43a1b33e89cc8404d1048fea0459a55dc9aca010135ac0944d57282ebf09ccc5d7d8125728a963d08c45837aca4fc92565a77a8ae6 WHIRLPOOL 916b908c6971a38d2a1ace5a2021355a2f493d7884b2eb9cf3fa0ff14159357c02e96470aa9ba56ef5902243e056788608304b3149c6bd8c281e7a5c770a9798
diff --git a/media-libs/sge/files/sge-030809-build.patch b/media-libs/sge/files/sge-030809-build.patch
new file mode 100644
index 000000000000..5b277a0a6b08
--- /dev/null
+++ b/media-libs/sge/files/sge-030809-build.patch
@@ -0,0 +1,123 @@
+--- Makefile.orig 2006-03-29 00:08:39.000000000 -0500
++++ Makefile 2006-03-29 00:09:36.000000000 -0500
+@@ -2,7 +2,7 @@
+
+ include Makefile.conf
+
+-CFLAGS += $(SGE_CFLAGS) -fPIC $(FT_CFLAGS)
++CXXFLAGS += $(SGE_CFLAGS) -fPIC $(FT_CFLAGS)
+ LIBS =$(SGE_LIBS)
+
+ SGE_VER = 030809
+@@ -10,20 +10,26 @@
+
+ OBJECTS=sge_surface.o sge_primitives.o sge_tt_text.o sge_bm_text.o sge_misc.o sge_textpp.o sge_blib.o sge_rotation.o sge_collision.o sge_shape.o
+
+-all: config $(OBJECTS)
+- @ar rsc libSGE.a $(OBJECTS)
++SHARED_LIB=libSGE.so.$(API_VER)
++STATIC_LIB=libSGE.a
+
+-$(OBJECTS): %.o:%.cpp %.h #Each object depends on thier .cpp and .h file
+- $(CXX) $(CFLAGS) -c $<
++all: sge_config.h $(OBJECTS) $(SHARED_LIB) $(STATIC_LIB)
+
+-shared: all
+- $(CXX) $(CFLAGS) -Wl,-soname,libSGE.so.$(API_VER) -fpic -fPIC -shared -o libSGE.so $(OBJECTS) $(LIBS)
++$(STATIC_LIB): $(OBJECTS)
++ $(AR) rsc libSGE.a $(OBJECTS)
+
+-shared-strip: shared
++$(OBJECTS): sge_config.h
++$(OBJECTS): %.o:%.cpp %.h #Each object depends on their .cpp and .h file
++ $(CXX) $(CXXFLAGS) -c $<
++
++$(SHARED_LIB): $(OBJECTS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -Wl,-soname,libSGE.so.$(API_VER) -fpic -fPIC -shared -o libSGE.so $(OBJECTS) $(LIBS)
++
++shared-strip: $(SHARED_LIB)
+ @strip libSGE.so
+
+ # Building a dll... I have no idea how to do this, but it should be something like below.
+-dll: config $(OBJECTS)
++dll: sge_config.h $(OBJECTS)
+ dlltool --output-def SGE.def $(OBJECTS)
+ dllwrap --driver-name $(CXX) -o SGE.dll --def SGE.def --output-lib libSGE.a --dllname SGE.dll $(OBJECTS) $(LIBS)
+
+@@ -33,21 +39,22 @@
+ clean:
+ @rm -f *.o *.so *.a *.dll *.def
+
+-config:
+- @echo "/* SGE Config header (generated automatically) */" >sge_config.h
+- @echo "#define SGE_VER $(SGE_VER)" >>sge_config.h
++sge_config.h:
++ @echo "/* SGE Config header (generated automatically) */" >sge_config.h.tmp
++ @echo "#define SGE_VER $(SGE_VER)" >>sge_config.h.tmp
+ ifeq ($(C_COMP),y)
+- @echo "#define _SGE_C_AND_CPP" >>sge_config.h
++ @echo "#define _SGE_C_AND_CPP" >>sge_config.h.tmp
+ endif
+ ifeq ($(USE_FT),n)
+- @echo "#define _SGE_NOTTF" >>sge_config.h
++ @echo "#define _SGE_NOTTF" >>sge_config.h.tmp
+ endif
+ ifeq ($(USE_IMG),y)
+- @echo "#define _SGE_HAVE_IMG" >>sge_config.h
++ @echo "#define _SGE_HAVE_IMG" >>sge_config.h.tmp
+ endif
+ ifeq ($(NO_CLASSES),y)
+- @echo "#define _SGE_NO_CLASSES" >>sge_config.h
++ @echo "#define _SGE_NO_CLASSES" >>sge_config.h.tmp
+ endif
++ mv sge_config.h.tmp sge_config.h
+
+ ifneq ($(QUIET),y)
+ @echo "== SGE r$(SGE_VER)"
+@@ -70,13 +77,13 @@
+ @echo ""
+ endif
+
+-install: shared
+- @mkdir -p $(PREFIX_H)
+- install -c -m 644 sge*.h $(PREFIX_H)
+- @mkdir -p $(PREFIX)/lib
+- install -c -m 644 libSGE.a $(PREFIX)/lib
+- install -c libSGE.so $(PREFIX)/lib/libSGE.so.$(API_VER).$(SGE_VER)
+- @cd $(PREFIX)/lib;\
++install: $(SHARED_LIB) $(STATIC_LIB)
++ @mkdir -p $(DESTDIR)$(PREFIX_H)
++ install -c -m 644 sge*.h $(DESTDIR)$(PREFIX_H)
++ @mkdir -p $(DESTDIR)$(PREFIX)/lib
++ install -c -m 644 $(STATIC_LIB) $(DESTDIR)$(PREFIX)/lib
++ install -c libSGE.so $(DESTDIR)$(PREFIX)/lib/libSGE.so.$(API_VER).$(SGE_VER)
++ @cd $(DESTDIR)$(PREFIX)/lib;\
+ ln -sf libSGE.so.$(API_VER).$(SGE_VER) libSGE.so.$(API_VER);\
+ ln -sf libSGE.so.$(API_VER) libSGE.so
+ @echo "** Headerfiles installed in $(PREFIX_H)"
+--- Makefile.conf.orig 2006-03-29 00:08:39.000000000 -0500
++++ Makefile.conf 2006-03-29 00:08:39.000000000 -0500
+@@ -11,6 +11,7 @@
+ # Compilers (C and C++)
+ CC=gcc
+ CXX=g++
++AR=ar
+
+ # Make sure sdl-config is available
+ HAVE_SDL =$(shell if (sdl-config --version) < /dev/null > /dev/null 2>&1; then echo "y"; else echo "n"; fi;)
+@@ -25,11 +26,13 @@
+ PREFIX_H =$(shell sdl-config --prefix)/include/SDL
+
+ # Flags passed to the compiler
+-CFLAGS =-Wall -O3 -ffast-math
++CXXFLAGS ?=-O3 -ffast-math
+ SGE_CFLAGS =$(shell sdl-config --cflags)
+ # Uncomment to make some more optimizations
+-#CFLAGS =-Wall -O9 -ffast-math -march=i686
++#CXXFLAGS =-O9 -ffast-math -march=i686
+
++# Spit out warnings
++CXXFLAGS += -Wall
+
+ # Libs config
+ SGE_LIBS =$(shell sdl-config --libs) -lstdc++
diff --git a/media-libs/sge/files/sge-030809-cmap.patch b/media-libs/sge/files/sge-030809-cmap.patch
new file mode 100644
index 000000000000..c03396e1fb8b
--- /dev/null
+++ b/media-libs/sge/files/sge-030809-cmap.patch
@@ -0,0 +1,28 @@
+http://bugs.gentoo.org/33296#26
+
+patch by Steve <steviedizzle@gmail.com>
+
+explanation:
+It changes the 16bit integers for setting and clearing collision maps to 32bit
+because if the surface is too large the program will segfault.
+
+--- sge030809/sge_collision.cpp
++++ sge030809/sge_collision.cpp
+@@ -336,7 +336,7 @@
+ void sge_unset_cdata(sge_cdata *cd, Sint16 x, Sint16 y, Sint16 w, Sint16 h)
+ {
+ Uint8 *map=cd->map;
+- Sint16 offs,len;
++ Sint32 offs,len;
+ int i,n=0;
+
+ offs=y*cd->w + x;
+@@ -365,7 +365,7 @@
+ void sge_set_cdata(sge_cdata *cd, Sint16 x, Sint16 y, Sint16 w, Sint16 h)
+ {
+ Uint8 *map=cd->map;
+- Sint16 offs,len;
++ Sint32 offs,len;
+ int i,n=0;
+
+ offs=y*cd->w + x;
diff --git a/media-libs/sge/files/sge-030809-freetype.patch b/media-libs/sge/files/sge-030809-freetype.patch
new file mode 100644
index 000000000000..7b638e4100f9
--- /dev/null
+++ b/media-libs/sge/files/sge-030809-freetype.patch
@@ -0,0 +1,25 @@
+--- sge_tt_text.cpp
++++ sge_tt_text.cpp
+@@ -36,10 +36,9 @@
+ #include "sge_textpp.h"
+
+ #ifndef _SGE_NOTTF
+-#include <freetype/freetype.h>
+-#include <freetype/ftoutln.h>
+-#include <freetype/ttnameid.h>
+-#include <freetype/internal/ftobjs.h>
++#include <ft2build.h>
++#include FT_FREETYPE_H
++#include FT_OUTLINE_H
+
+ /* The structure used to hold glyph information (cached) */
+ struct glyph {
+@@ -294,7 +293,7 @@
+ }
+ memset(stream, 0, sizeof(*stream));
+
+- stream->memory = _sge_library->memory;
++ stream->memory = NULL;
+ stream->read = RWread;
+ stream->descriptor.pointer = src;
+ stream->pos = (unsigned long)position;
diff --git a/media-libs/sge/metadata.xml b/media-libs/sge/metadata.xml
new file mode 100644
index 000000000000..ad40ba2cea4b
--- /dev/null
+++ b/media-libs/sge/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <use>
+ <flag name="image">enable sdl-image support</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-libs/sge/sge-030809.ebuild b/media-libs/sge/sge-030809.ebuild
new file mode 100644
index 000000000000..6bff1d0d2baf
--- /dev/null
+++ b/media-libs/sge/sge-030809.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils multilib toolchain-funcs
+
+MY_P="sge${PV}"
+DESCRIPTION="Graphics extensions library for SDL"
+HOMEPAGE="http://www.etek.chalmers.se/~e8cal1/sge/"
+SRC_URI="http://www.etek.chalmers.se/~e8cal1/sge/files/${MY_P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~ia64 ppc x86 ~x86-fbsd"
+IUSE="doc examples image truetype"
+
+DEPEND="media-libs/libsdl
+ image? ( media-libs/sdl-image )
+ truetype? ( >=media-libs/freetype-2 )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-freetype.patch \
+ "${FILESDIR}"/${P}-cmap.patch
+ sed -i "s:\$(PREFIX)/lib:\$(PREFIX)/$(get_libdir):" Makefile || die
+ sed -i \
+ -e '/^CC=/d' \
+ -e '/^CXX=/d' \
+ -e '/^AR=/d' \
+ Makefile.conf || die
+ tc-export CC CXX AR
+ # make sure the header gets regenerated everytime
+ rm -f sge_config.h
+}
+
+src_compile() {
+ emake \
+ USE_IMG=$(usex image y n) \
+ USE_FT=$(usex truetype y n)
+}
+
+src_install() {
+ DOCS="README Todo WhatsNew" \
+ default
+
+ use doc && dohtml docs/*
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}