forked from hasufell/hasufell-repository
games-fps/openarena: initial import of version 0.8.8
This commit is contained in:
parent
abedc6ea5f
commit
0b4b22c0c3
@ -0,0 +1,36 @@
|
||||
From: Julian Ospald <hasufell@gentoo.org>
|
||||
Date: Thu May 17 23:34:20 UTC 2012
|
||||
Subject: flags, arch
|
||||
|
||||
--- openarena-engine-source-0.8.8/Makefile
|
||||
+++ openarena-engine-source-0.8.8/Makefile
|
||||
@@ -73,6 +73,10 @@
|
||||
|
||||
ifndef ARCH
|
||||
ARCH=$(COMPILE_ARCH)
|
||||
+else
|
||||
+ ifeq ($(ARCH),amd64)
|
||||
+ ARCH=x86_64
|
||||
+ endif
|
||||
endif
|
||||
export ARCH
|
||||
|
||||
@@ -263,8 +267,7 @@
|
||||
endif
|
||||
endif
|
||||
|
||||
- BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes \
|
||||
- -pipe -DUSE_ICON
|
||||
+ BASE_CFLAGS = -fno-strict-aliasing -DUSE_ICON -I.
|
||||
CLIENT_CFLAGS = $(SDL_CFLAGS)
|
||||
SERVER_CFLAGS =
|
||||
|
||||
@@ -335,7 +338,7 @@
|
||||
THREAD_LIBS=-lpthread
|
||||
LIBS=-ldl -lm
|
||||
|
||||
- CLIENT_LIBS=$(SDL_LIBS) -lGL
|
||||
+ CLIENT_LIBS=$(SDL_LIBS) -lGL -ljpeg
|
||||
|
||||
ifeq ($(USE_OPENAL),1)
|
||||
ifneq ($(USE_OPENAL_DLOPEN),1)
|
@ -0,0 +1,172 @@
|
||||
--- openarena-engine-source-0.8.8/Makefile
|
||||
+++ openarena-engine-source-0.8.8/Makefile
|
||||
@@ -1406,41 +1406,7 @@
|
||||
$(B)/client/l_script.o \
|
||||
$(B)/client/l_struct.o \
|
||||
\
|
||||
- $(B)/client/jcapimin.o \
|
||||
- $(B)/client/jcapistd.o \
|
||||
- $(B)/client/jccoefct.o \
|
||||
- $(B)/client/jccolor.o \
|
||||
- $(B)/client/jcdctmgr.o \
|
||||
- $(B)/client/jchuff.o \
|
||||
- $(B)/client/jcinit.o \
|
||||
- $(B)/client/jcmainct.o \
|
||||
- $(B)/client/jcmarker.o \
|
||||
- $(B)/client/jcmaster.o \
|
||||
- $(B)/client/jcomapi.o \
|
||||
- $(B)/client/jcparam.o \
|
||||
- $(B)/client/jcphuff.o \
|
||||
- $(B)/client/jcprepct.o \
|
||||
- $(B)/client/jcsample.o \
|
||||
- $(B)/client/jdapimin.o \
|
||||
- $(B)/client/jdapistd.o \
|
||||
$(B)/client/jdatasrc.o \
|
||||
- $(B)/client/jdcoefct.o \
|
||||
- $(B)/client/jdcolor.o \
|
||||
- $(B)/client/jddctmgr.o \
|
||||
- $(B)/client/jdhuff.o \
|
||||
- $(B)/client/jdinput.o \
|
||||
- $(B)/client/jdmainct.o \
|
||||
- $(B)/client/jdmarker.o \
|
||||
- $(B)/client/jdmaster.o \
|
||||
- $(B)/client/jdpostct.o \
|
||||
- $(B)/client/jdsample.o \
|
||||
- $(B)/client/jdtrans.o \
|
||||
- $(B)/client/jerror.o \
|
||||
- $(B)/client/jfdctflt.o \
|
||||
- $(B)/client/jidctflt.o \
|
||||
- $(B)/client/jmemmgr.o \
|
||||
- $(B)/client/jmemnobs.o \
|
||||
- $(B)/client/jutils.o \
|
||||
\
|
||||
$(B)/client/tr_animation.o \
|
||||
$(B)/client/tr_backend.o \
|
||||
--- openarena-engine-source-0.8.8/code/jpeg-6b/jdatasrc.c
|
||||
+++ openarena-engine-source-0.8.8/code/jpeg-6b/jdatasrc.c
|
||||
@@ -15,9 +15,15 @@
|
||||
*/
|
||||
|
||||
/* this is not a core library module, so it doesn't define JPEG_INTERNALS */
|
||||
-#include "jinclude.h"
|
||||
-#include "jpeglib.h"
|
||||
-#include "jerror.h"
|
||||
+#include <stdio.h>
|
||||
+#include <string.h>
|
||||
+#include <jpeglib.h>
|
||||
+#include <jerror.h>
|
||||
+#undef METHODDEF
|
||||
+#define METHODDEF static
|
||||
+#undef GLOBAL
|
||||
+#define GLOBAL
|
||||
+#define SIZEOF(object) ((size_t) sizeof(object))
|
||||
|
||||
#ifndef MIN
|
||||
#define MIN(a, b) ((a)<(b)?(a):(b))
|
||||
@@ -44,7 +50,7 @@
|
||||
* before any data is actually read.
|
||||
*/
|
||||
|
||||
-METHODDEF(void)
|
||||
+METHODDEF void
|
||||
init_source (j_decompress_ptr cinfo)
|
||||
{
|
||||
my_src_ptr src = (my_src_ptr) cinfo->src;
|
||||
@@ -90,7 +96,7 @@
|
||||
* the front of the buffer rather than discarding it.
|
||||
*/
|
||||
|
||||
-METHODDEF(boolean)
|
||||
+METHODDEF boolean
|
||||
fill_input_buffer (j_decompress_ptr cinfo)
|
||||
{
|
||||
my_src_ptr src = (my_src_ptr) cinfo->src;
|
||||
@@ -129,7 +135,7 @@
|
||||
* buffer is the application writer's problem.
|
||||
*/
|
||||
|
||||
-METHODDEF(void)
|
||||
+METHODDEF void
|
||||
skip_input_data (j_decompress_ptr cinfo, long num_bytes)
|
||||
{
|
||||
my_src_ptr src = (my_src_ptr) cinfo->src;
|
||||
@@ -170,7 +176,7 @@
|
||||
* for error exit.
|
||||
*/
|
||||
|
||||
-METHODDEF(void)
|
||||
+METHODDEF void
|
||||
term_source (j_decompress_ptr cinfo)
|
||||
{
|
||||
/* no work necessary here */
|
||||
@@ -183,8 +189,8 @@
|
||||
* for closing it after finishing decompression.
|
||||
*/
|
||||
|
||||
-GLOBAL(void)
|
||||
-jpeg_mem_src (j_decompress_ptr cinfo, unsigned char *inbuf, size_t size)
|
||||
+GLOBAL void
|
||||
+jpeg_mem_src (j_decompress_ptr cinfo, unsigned char *inbuf, unsigned long size)
|
||||
{
|
||||
my_src_ptr src;
|
||||
|
||||
--- openarena-engine-source-0.8.8/code/renderer/tr_image_jpg.c
|
||||
+++ openarena-engine-source-0.8.8/code/renderer/tr_image_jpg.c
|
||||
@@ -31,7 +31,7 @@
|
||||
*/
|
||||
|
||||
#define JPEG_INTERNALS
|
||||
-#include "../jpeg-6b/jpeglib.h"
|
||||
+#include <jpeglib.h>
|
||||
|
||||
void R_LoadJPG( const char *filename, unsigned char **pic, int *width, int *height ) {
|
||||
/* This struct contains the JPEG decompression parameters and pointers to
|
||||
@@ -131,7 +131,10 @@
|
||||
}
|
||||
|
||||
memcount = pixelcount * 4;
|
||||
- row_stride = cinfo.output_width * cinfo.output_components;
|
||||
+ if (3 == cinfo.output_components)
|
||||
+ row_stride = cinfo.output_width * 4;
|
||||
+ else
|
||||
+ row_stride = cinfo.output_width * cinfo.output_components;
|
||||
|
||||
out = ri.Malloc(memcount);
|
||||
|
||||
@@ -144,14 +147,26 @@
|
||||
/* Here we use the library's state variable cinfo.output_scanline as the
|
||||
* loop counter, so that we don't have to keep track ourselves.
|
||||
*/
|
||||
+ buf = out;
|
||||
while (cinfo.output_scanline < cinfo.output_height) {
|
||||
/* jpeg_read_scanlines expects an array of pointers to scanlines.
|
||||
* Here the array is only one element long, but you could ask for
|
||||
* more than one scanline at a time if that's more convenient.
|
||||
*/
|
||||
- buf = ((out+(row_stride*cinfo.output_scanline)));
|
||||
buffer = &buf;
|
||||
(void) jpeg_read_scanlines(&cinfo, buffer, 1);
|
||||
+ if (3 == cinfo.output_components) {
|
||||
+ /* turn RGB into RGBA */
|
||||
+ int ioffset = cinfo.output_width * 3 - 1;
|
||||
+ int ooffset = cinfo.output_width * 4 - 1;
|
||||
+ do {
|
||||
+ buf[ooffset--] = 255;
|
||||
+ buf[ooffset--] = buf[ioffset--];
|
||||
+ buf[ooffset--] = buf[ioffset--];
|
||||
+ buf[ooffset--] = buf[ioffset--];
|
||||
+ } while (ioffset > 0);
|
||||
+ }
|
||||
+ buf += row_stride;
|
||||
}
|
||||
|
||||
buf = out;
|
||||
@@ -176,7 +191,7 @@
|
||||
buf[--dindex] = greyshade;
|
||||
} while(sindex);
|
||||
}
|
||||
- else
|
||||
+ else if (4 == cinfo.output_components)
|
||||
{
|
||||
// clear all the alphas to 255
|
||||
int i;
|
92
packages/games-fps/openarena/openarena-0.8.8.exheres-0
Normal file
92
packages/games-fps/openarena/openarena-0.8.8.exheres-0
Normal file
@ -0,0 +1,92 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Copyright 2014-2016 Julian Ospald <hasufell@posteo.de>
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
SUMMARY="Open-source replacement for Quake 3 Arena"
|
||||
HOMEPAGE="http://openarena.ws/"
|
||||
DOWNLOADS="mirror://sourceforge/oarena/${PNV}.zip
|
||||
mirror://sourceforge/oarena/src/${PN}-engine-source-${PV}.tar.bz2"
|
||||
|
||||
LICENCES="GPL-2"
|
||||
SLOT="0"
|
||||
PLATFORMS="~amd64 ~x86"
|
||||
MYOPTIONS="
|
||||
( providers: ijg-jpeg jpeg-turbo ) [[ number-selected = exactly-one ]]
|
||||
"
|
||||
|
||||
DEPENDENCIES="
|
||||
build:
|
||||
virtual/unzip
|
||||
build+run:
|
||||
media-libs/SDL:0[X]
|
||||
media-libs/libvorbis
|
||||
media-libs/openal
|
||||
media-libs/speex
|
||||
net-misc/curl
|
||||
x11-dri/mesa
|
||||
x11-libs/libX11
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
x11-libs/libXext
|
||||
providers:ijg-jpeg? ( media-libs/jpeg )
|
||||
providers:jpeg-turbo? ( media-libs/libjpeg-turbo )
|
||||
"
|
||||
|
||||
MY_S=${WORKBASE}/${PN}-engine-source-${PV}
|
||||
BUILD_DIR=${PN}-build
|
||||
OA_SHARE_DIR=/usr/share/${PN}
|
||||
|
||||
src_prepare() {
|
||||
edo pushd "${WORKBASE}"
|
||||
expatch -p0 "${FILES}"/${PNV}-makefile.patch
|
||||
expatch -p0 "${FILES}"/${PNV}-unbundling.patch
|
||||
edo popd
|
||||
edo touch "${MY_S}"/jpegint.h
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export CC=${CC} CXX=${CXX} LD=${LD} AR=${AR} RANLIB=${RANLIB}
|
||||
|
||||
emake -C ${MY_S} \
|
||||
V=1 \
|
||||
DEFAULT_BASEDIR="${OA_SHARE_DIR}" \
|
||||
BR="${BUILD_DIR}" \
|
||||
USE_INTERNAL_SPEEX=0 \
|
||||
USE_VOIP=1 \
|
||||
USE_MUMBLE=0 \
|
||||
BUILD_SERVER=1 \
|
||||
BUILD_CLIENT_SMP=1 \
|
||||
USE_LOCAL_HEADERS=0 \
|
||||
USE_CURL=0 \
|
||||
USE_OPENAL=0 \
|
||||
USE_CODEC_VORBIS=0 \
|
||||
OPTIMIZE=
|
||||
}
|
||||
|
||||
src_install() {
|
||||
edo pushd "${MY_S}/${BUILD_DIR}"
|
||||
newbin openarena-smp.* ${PN}
|
||||
newbin oa_ded.* "${PN}-ded"
|
||||
edo popd
|
||||
|
||||
insinto "${OA_SHARE_DIR}"
|
||||
doins -r baseoa missionpack
|
||||
|
||||
dodoc CHANGES CREDITS LINUXNOTES README
|
||||
|
||||
insinto /usr/share/pixmaps
|
||||
newins "${MY_S}"/misc/quake3.png ${PN}.png
|
||||
|
||||
insinto /usr/share/applications/
|
||||
hereins ${PN}.desktop << EOF
|
||||
[Desktop Entry]
|
||||
Name=OpenArena
|
||||
Type=Application
|
||||
Comment=${SUMMARY}
|
||||
Exec=${PN}
|
||||
TryExec=${PN}
|
||||
Icon=${PN}
|
||||
Categories=Game;ActionGame;
|
||||
EOF
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user