On Sunday 11 March 2012 17:41:03 Kirill Bychkov wrote:
> Hi. patches/patch-code_sys_sys_unix_c was killed 3 days ago, and you still
> have this in your diff.
> Anyway playing with bots on localhost is fine on amd64

On Sunday 11 March 2012 16:12:47 Stuart Henderson wrote:
> REVISION-data should be zapped, rest reads OK but untested

Fixed diff attached.

PS. It might be enough on macppc to package this and run openarena-server.
Then load any map, for example: "map aggressor". That should show if it's
using the VM or the interpreter just like openarena-client. Please send
me a log of the output to my personal mail if anyone tests this.

-- 
Antti Harri

diff --git games/openarena/Makefile games/openarena/Makefile
index b290974..592ba81 100644
--- games/openarena/Makefile
+++ games/openarena/Makefile
@@ -10,27 +10,24 @@ MULTI_PACKAGES =    -main -server -data
 
 CATEGORIES =           games x11
 
-V =                    0.8.5
-E_V =                  0.8.1   # engine version
+V =                    0.8.8
+E_V =                  ${V}    # engine version
 
 PKGNAME =              openarena-${V}
 PKGNAME-main =         openarena-${V}
 PKGNAME-server =       openarena-server-${V}
 PKGNAME-data =         openarena-data-${V}
 
-REVISION-main =                0
-REVISION-server =      0
-REVISION-data =                0
-
 PKG_ARCH-data =        *
 
-DISTNAME =             oa${V:S/.//g}
-DISTFILES =            ${DISTNAME}.zip openarena-engine-${E_V}-1.tar.bz2
+DISTNAME =             openarena-${V}
+DISTFILES =            ${DISTNAME}.zip openarena-engine-source-${E_V}.tar.bz2:0
 
-MS_PREFIX =            http://download.tuxfamily.org/openarena/rel/
 HOMEPAGE =             http://www.openarena.ws/
-MASTER_SITES =         ${MS_PREFIX}/${V:S/.//g}/ \
-                       ${MS_PREFIX}/${E_V:S/.//g}/source/ \
+MS_PREFIX =            http://download.tuxfamily.org/openarena/rel/
+MASTER_SITES =         ${MS_PREFIX}${V:S/.//g}/ \
+                       ${MS_PREFIX}${E_V:S/.//g}/source/
+MASTER_SITES0 =                
http://files.poulsander.com/~poul19/public_files/oa/dev088/ \
                        http://openbsd.fi/distfiles/
 
 # GPLv2 but contains software with other (free) licenses as well
@@ -40,22 +37,25 @@ PERMIT_DISTFILES_CDROM =Yes
 PERMIT_DISTFILES_FTP = Yes
 
 WANTLIB-main =         GL c m pthread sndio ogg>=5 SDL>=7 vorbis>=7 \
-                       vorbisfile>=5
+                       vorbisfile>=5 curl
 WANTLIB-server =       c m
 
 LIB_DEPENDS-main =     audio/libogg \
+                       audio/libvorbis \
                        devel/sdl \
-                       audio/libvorbis
+                       net/curl
 RUN_DEPENDS-main =     ${BASE_PKGPATH},-data
 RUN_DEPENDS-server =   ${BASE_PKGPATH},-data
 
-ALL_TARGET =           release
 USE_GMAKE =            Yes
 MAKE_FLAGS =           USE_OPENAL=0 \
-                       BINEXT='' \
+                       FULLBINEXT='' \
+                       V=1 \
                        DEFAULT_BASEDIR=${LOCALBASE}/share/openarena
 
-WRKDIST =              ${WRKDIR}/openarena-engine-${E_V}
+NO_REGRESS =           Yes
+WRKDIST =              ${WRKDIR}/openarena-engine-source-${E_V}
+ALL_TARGET =           release
 
 post-extract:
        find ${WRKDIR} -name '*.orig' -print0 | xargs -0r rm -f
diff --git games/openarena/distinfo games/openarena/distinfo
index fa891e0..dfad2d2 100644
--- games/openarena/distinfo
+++ games/openarena/distinfo
@@ -1,10 +1,10 @@
-MD5 (oa085.zip) = NrxQRfKfzfOBENoPD1kpkw==
-MD5 (openarena-engine-0.8.1-1.tar.bz2) = TuaW6sxLA1D527VYjc10og==
-RMD160 (oa085.zip) = SH1bw959W+u4LB5/rvW4r9F9QfQ=
-RMD160 (openarena-engine-0.8.1-1.tar.bz2) = Ej6fcGIf2FY4XGynrQWAuBRU1oc=
-SHA1 (oa085.zip) = NOn0OMPBjXmMELKwZprU04qKTtY=
-SHA1 (openarena-engine-0.8.1-1.tar.bz2) = beNFwL69h+FAbLBxiVN9uZpCKAg=
-SHA256 (oa085.zip) = +NSSnwa9+LI8k098FFPzsxBuhRaS/eQHlUXmfFiOnEg=
-SHA256 (openarena-engine-0.8.1-1.tar.bz2) = 
QwuptpHICFuUbgBPDMiQmVx/gpVJi9jIznRCk6hydNI=
-SIZE (oa085.zip) = 356536552
-SIZE (openarena-engine-0.8.1-1.tar.bz2) = 2951703
+MD5 (openarena-0.8.8.zip) = nzU9lteInDdzSdaSw5BeWw==
+MD5 (openarena-engine-source-0.8.8.tar.bz2) = ypsjm0d61njr94HhTObteg==
+RMD160 (openarena-0.8.8.zip) = 3sfEPCcnI16Xvhqzlo2IA/3XElE=
+RMD160 (openarena-engine-source-0.8.8.tar.bz2) = 6CPBhO/6y0Lp7NKq94nZVwIh6JY=
+SHA1 (openarena-0.8.8.zip) = N6tBmQs3RZgizowv5ZBgdhbh9tE=
+SHA1 (openarena-engine-source-0.8.8.tar.bz2) = ZPMzwpCxW2sOOBncEgs+yiZTNA4=
+SHA256 (openarena-0.8.8.zip) = Wo+vf1tR81GwoWGMBra5il8aZ1jx05gY3iyH3yoLrEo=
+SHA256 (openarena-engine-source-0.8.8.tar.bz2) = 
lapQDLfkLlf7H223uXolQWj0+i42dtbNwzGAtp/eDnc=
+SIZE (openarena-0.8.8.zip) = 425189255
+SIZE (openarena-engine-source-0.8.8.tar.bz2) = 3777830
diff --git games/openarena/patches/patch-Makefile 
games/openarena/patches/patch-Makefile
index e0fdec2..58b35ab 100644
--- games/openarena/patches/patch-Makefile
+++ games/openarena/patches/patch-Makefile
@@ -1,7 +1,7 @@
 $OpenBSD: ports/games/openarena/patches/patch-Makefile,v 1.3 2010/05/27 
03:47:28 jakemsr Exp $
---- Makefile.orig      Sat Aug  9 13:22:37 2008
-+++ Makefile   Mon May  3 04:26:35 2010
-@@ -143,13 +143,14 @@ endif
+--- Makefile.orig      Tue Dec 13 00:48:49 2011
++++ Makefile   Wed Mar  7 11:21:26 2012
+@@ -164,13 +164,14 @@ endif
  
  #############################################################################
  
@@ -18,7 +18,7 @@ $OpenBSD: ports/games/openarena/patches/patch-Makefile,v 1.3 
2010/05/27 03:47:28
  ASMDIR=$(MOUNT_DIR)/asm
  SYSDIR=$(MOUNT_DIR)/sys
  GDIR=$(MOUNT_DIR)/game
-@@ -584,12 +585,11 @@ else # ifeq freebsd
+@@ -638,11 +639,11 @@ else # ifeq freebsd
  
  ifeq ($(PLATFORM),openbsd)
  
@@ -27,63 +27,52 @@ $OpenBSD: ports/games/openarena/patches/patch-Makefile,v 
1.3 2010/05/27 03:47:28
 +  # Get the machine type
 +  ARCH=$(shell uname -m)
  
--
    BASE_CFLAGS = -Wall -fno-strict-aliasing -Wimplicit -Wstrict-prototypes \
--    -DUSE_ICON $(shell sdl-config --cflags)
-+    -DUSE_ICON -DARCH_STRING=\\\"${ARCH}\\\" $(shell sdl-config --cflags)
+-    -DUSE_ICON
++    -DUSE_ICON -DARCH_STRING=\\\"${ARCH}\\\" -DMAP_ANONYMOUS=MAP_ANON
+   CLIENT_CFLAGS = $(SDL_CFLAGS)
+   SERVER_CFLAGS = 
  
-   ifeq ($(USE_OPENAL),1)
-     BASE_CFLAGS += -DUSE_OPENAL
-@@ -603,8 +603,8 @@ ifeq ($(PLATFORM),openbsd)
+@@ -662,8 +663,7 @@ ifeq ($(PLATFORM),openbsd)
+     USE_CURL_DLOPEN=0
    endif
  
-   BASE_CFLAGS += -DNO_VM_COMPILED -I/usr/X11R6/include -I/usr/local/include
--  RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG -O3 \
--    -march=pentium -fomit-frame-pointer -pipe -ffast-math \
-+  RELEASE_CFLAGS=$(BASE_CFLAGS) -DNDEBUG \
-+    -fomit-frame-pointer -pipe -ffast-math \
-     -falign-loops=2 -falign-jumps=2 -falign-functions=2 \
-     -funroll-loops -fstrength-reduce
-   HAVE_VM_COMPILED=false
-@@ -615,16 +615,15 @@ ifeq ($(PLATFORM),openbsd)
-   SHLIBCFLAGS=-fPIC
-   SHLIBLDFLAGS=-shared $(LDFLAGS)
- 
--  THREAD_LDFLAGS=-lpthread
-+  THREAD_LDFLAGS=-pthread
-   LDFLAGS=-lm
- 
--  CLIENT_LDFLAGS =
-+  CLIENT_LDFLAGS = $(shell sdl-config --libs) -lGL -lsndio
- 
--  CLIENT_LDFLAGS += $(shell sdl-config --libs) -lGL
--
+-  BASE_CFLAGS += -DNO_VM_COMPILED
+-  HAVE_VM_COMPILED=false
++  HAVE_VM_COMPILED=true
+ 
+   SHLIBEXT=so
+   SHLIBNAME=.$(SHLIBEXT)
+@@ -675,11 +675,12 @@ ifeq ($(PLATFORM),openbsd)
+ 
+   CLIENT_LIBS =
+ 
+-  CLIENT_LIBS += $(SDL_LIBS) -lGL
++  CLIENT_LIBS += $(SDL_LIBS) -lGL -lsndio
+ 
    ifeq ($(USE_OPENAL),1)
-+    CLIENT_LDFLAGS += $(THREAD_LDFLAGS)
++    CLIENT_LIBS += $(THREAD_LIBS)
      ifneq ($(USE_OPENAL_DLOPEN),1)
--      CLIENT_LDFLAGS += $(THREAD_LDFLAGS) -lossaudio -lopenal
-+      CLIENT_LDFLAGS += $(shell openal-config --libs)
+-      CLIENT_LIBS += $(THREAD_LIBS) -lossaudio -lopenal
++      CLIENT_LIBS += $(shell openal-config --libs)
      endif
    endif
  
-@@ -781,13 +780,13 @@ endif #SunOS
- TARGETS =
+@@ -851,11 +852,11 @@ ifndef SHLIBNAME
+ endif
  
  ifneq ($(BUILD_SERVER),0)
--  TARGETS += $(B)/oa_ded.$(ARCH)$(BINEXT)
-+  TARGETS += $(B)/openarena-server$(BINEXT)
+-  TARGETS += $(B)/oa_ded$(FULLBINEXT)
++  TARGETS += $(B)/openarena-server$(FULLBINEXT)
  endif
  
  ifneq ($(BUILD_CLIENT),0)
--  TARGETS += $(B)/openarena.$(ARCH)$(BINEXT)
-+  TARGETS += $(B)/openarena-client$(BINEXT)
+-  TARGETS += $(B)/openarena$(FULLBINEXT)
++  TARGETS += $(B)/openarena-client$(FULLBINEXT)
    ifneq ($(BUILD_CLIENT_SMP),0)
--    TARGETS += $(B)/openarena-smp.$(ARCH)$(BINEXT)
-+    TARGETS += $(B)/openarena-smp$(BINEXT)
+     TARGETS += $(B)/openarena-smp$(FULLBINEXT)
    endif
- endif
- 
-@@ -1347,8 +1346,9 @@ Q3OBJ = \
+@@ -1471,8 +1472,9 @@ Q3OBJ = \
    \
    $(B)/client/sdl_gamma.o \
    $(B)/client/sdl_input.o \
@@ -94,31 +83,25 @@ $OpenBSD: ports/games/openarena/patches/patch-Makefile,v 
1.3 2010/05/27 03:47:28
    $(B)/client/con_passive.o \
    $(B)/client/con_log.o \
    $(B)/client/sys_main.o
-@@ -1450,12 +1450,12 @@ Q3POBJ += \
+@@ -1597,7 +1599,7 @@ Q3POBJ += \
  Q3POBJ_SMP += \
    $(B)/clientsmp/sdl_glimp.o
  
--$(B)/openarena.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
-+$(B)/openarena-client$(BINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
-       $(echo_cmd) "LD $@"
-       $(Q)$(CC) -o $@ $(Q3OBJ) $(Q3POBJ) $(CLIENT_LDFLAGS) \
-               $(LDFLAGS) $(LIBSDLMAIN)
- 
--$(B)/openarena-smp.$(ARCH)$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
-+$(B)/openarena-smp$(BINEXT): $(Q3OBJ) $(Q3POBJ_SMP) $(LIBSDLMAIN)
+-$(B)/openarena$(FULLBINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
++$(B)/openarena-client$(FULLBINEXT): $(Q3OBJ) $(Q3POBJ) $(LIBSDLMAIN)
        $(echo_cmd) "LD $@"
-       $(Q)$(CC) -o $@ $(Q3OBJ) $(Q3POBJ_SMP) $(CLIENT_LDFLAGS) \
-               $(THREAD_LDFLAGS) $(LDFLAGS) $(LIBSDLMAIN)
-@@ -1582,7 +1582,7 @@ else
-     $(B)/ded/con_tty.o
+       $(Q)$(CC) $(CLIENT_CFLAGS) $(CFLAGS) $(CLIENT_LDFLAGS) $(LDFLAGS) \
+               -o $@ $(Q3OBJ) $(Q3POBJ) \
+@@ -1756,7 +1758,7 @@ ifeq ($(PLATFORM),darwin)
+     $(B)/ded/sys_osx.o
  endif
  
--$(B)/oa_ded.$(ARCH)$(BINEXT): $(Q3DOBJ)
-+$(B)/openarena-server$(BINEXT): $(Q3DOBJ)
+-$(B)/oa_ded$(FULLBINEXT): $(Q3DOBJ)
++$(B)/openarena-server$(FULLBINEXT): $(Q3DOBJ)
        $(echo_cmd) "LD $@"
-       $(Q)$(CC) -o $@ $(Q3DOBJ) $(LDFLAGS)
+       $(Q)$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(Q3DOBJ) $(LIBS)
  
-@@ -1899,6 +1899,9 @@ $(B)/client/%.o: $(SPEEXDIR)/%.c
+@@ -2076,6 +2078,9 @@ $(B)/client/%.o: $(ZDIR)/%.c
  $(B)/client/%.o: $(RDIR)/%.c
        $(DO_CC)
  
@@ -128,25 +111,21 @@ $OpenBSD: ports/games/openarena/patches/patch-Makefile,v 
1.3 2010/05/27 03:47:28
  $(B)/client/%.o: $(SDLDIR)/%.c
        $(DO_CC)
  
-@@ -2037,17 +2040,17 @@ copyfiles: release
+@@ -2223,7 +2228,7 @@ copyfiles: release
        -$(MKDIR) -p -m 0755 $(COPYDIR)/missionpack
  
  ifneq ($(BUILD_CLIENT),0)
--      $(INSTALL) -s -m 0755 $(BR)/openarena.$(ARCH)$(BINEXT) 
$(COPYDIR)/openarena.$(ARCH)$(BINEXT)
-+      $(INSTALL) -s -m 0755 $(BR)/openarena-client$(BINEXT) 
$(COPYDIR)/openarena-client$(BINEXT)
+-      $(INSTALL) $(STRIP_FLAG) -m 0755 $(BR)/openarena$(FULLBINEXT) 
$(COPYBINDIR)/openarena$(FULLBINEXT)
++      $(INSTALL) $(STRIP_FLAG) -m 0755 $(BR)/openarena-client$(FULLBINEXT) 
$(COPYBINDIR)/openarena-client$(FULLBINEXT)
  endif
  
  # Don't copy the SMP until it's working together with SDL.
- #ifneq ($(BUILD_CLIENT_SMP),0)
--#     $(INSTALL) -s -m 0755 $(BR)/openarena-smp.$(ARCH)$(BINEXT) 
$(COPYDIR)/openarena-smp.$(ARCH)$(BINEXT)
-+#     $(INSTALL) -s -m 0755 $(BR)/openarena-smp$(BINEXT) 
$(COPYDIR)/openarena-smp$(BINEXT)
- #endif
+@@ -2233,7 +2238,7 @@ endif
  
  ifneq ($(BUILD_SERVER),0)
--      @if [ -f $(BR)/oa_ded.$(ARCH)$(BINEXT) ]; then \
--              $(INSTALL) -s -m 0755 $(BR)/oa_ded.$(ARCH)$(BINEXT) 
$(COPYDIR)/oa_ded.$(ARCH)$(BINEXT); \
-+      @if [ -f $(BR)/openarena-server$(BINEXT) ]; then \
-+              $(INSTALL) -s -m 0755 $(BR)/openarena-server$(BINEXT) 
$(COPYDIR)/openarena-server$(BINEXT); \
+       @if [ -f $(BR)/oa_ded$(FULLBINEXT) ]; then \
+-              $(INSTALL) $(STRIP_FLAG) -m 0755 $(BR)/oa_ded$(FULLBINEXT) 
$(COPYBINDIR)/oa_ded$(FULLBINEXT); \
++              $(INSTALL) $(STRIP_FLAG) -m 0755 
$(BR)/openarena-server$(FULLBINEXT) 
$(COPYBINDIR)/openarena-server$(FULLBINEXT); \
        fi
  endif
  
diff --git games/openarena/patches/patch-code_client_libmumblelink_c 
games/openarena/patches/patch-code_client_libmumblelink_c
index 0aaa068..79e1c4f 100644
--- games/openarena/patches/patch-code_client_libmumblelink_c
+++ games/openarena/patches/patch-code_client_libmumblelink_c
@@ -1,7 +1,7 @@
 $OpenBSD: ports/games/openarena/patches/patch-code_client_libmumblelink_c,v 
1.1.1.1 2008/10/27 13:29:02 weerd Exp $
---- code/client/libmumblelink.c.orig   Thu Aug 21 23:11:45 2008
-+++ code/client/libmumblelink.c        Thu Aug 21 23:11:59 2008
-@@ -86,7 +86,11 @@ int mumble_link(const char* name)
+--- code/client/libmumblelink.c.orig   Sat Dec 24 14:29:31 2011
++++ code/client/libmumblelink.c        Tue Mar  6 22:44:31 2012
+@@ -101,7 +101,11 @@ int mumble_link(const char* name)
                return 0;
  
        snprintf(file, sizeof (file), "/MumbleLink.%d", getuid());
diff --git games/openarena/patches/patch-code_client_snd_dma_c 
games/openarena/patches/patch-code_client_snd_dma_c
index 4b292c5..4375cf8 100644
--- games/openarena/patches/patch-code_client_snd_dma_c
+++ games/openarena/patches/patch-code_client_snd_dma_c
@@ -1,7 +1,7 @@
 $OpenBSD: ports/games/openarena/patches/patch-code_client_snd_dma_c,v 1.1 
2010/05/27 03:47:28 jakemsr Exp $
---- code/client/snd_dma.c.orig Mon May  3 05:44:09 2010
-+++ code/client/snd_dma.c      Mon May  3 06:18:07 2010
-@@ -1221,7 +1221,6 @@ void S_Update_(void) {
+--- code/client/snd_dma.c.orig Sat Dec 24 14:29:31 2011
++++ code/client/snd_dma.c      Tue Mar  6 22:44:31 2012
+@@ -1219,7 +1219,6 @@ void S_Update_(void) {
        static                  float   lastTime = 0.0f;
        float                   ma, op;
        float                   thisTime, sane;
@@ -9,7 +9,7 @@ $OpenBSD: 
ports/games/openarena/patches/patch-code_client_snd_dma_c,v 1.1 2010/0
  
        if ( !s_soundStarted || s_soundMuted ) {
                return;
-@@ -1231,11 +1230,6 @@ void S_Update_(void) {
+@@ -1229,11 +1228,6 @@ void S_Update_(void) {
  
        // Updates s_soundtime
        S_GetSoundtime();
diff --git games/openarena/patches/patch-code_qcommon_net_ip_c 
games/openarena/patches/patch-code_qcommon_net_ip_c
deleted file mode 100644
index 9512fc8..0000000
--- games/openarena/patches/patch-code_qcommon_net_ip_c
+++ /dev/null
@@ -1,25 +0,0 @@
-$OpenBSD: ports/games/openarena/patches/patch-code_qcommon_net_ip_c,v 1.1.1.1 
2008/10/27 13:29:02 weerd Exp $
---- code/qcommon/net_ip.c.orig Sun Aug 31 14:36:07 2008
-+++ code/qcommon/net_ip.c      Sun Aug 31 14:44:25 2008
-@@ -335,7 +335,21 @@ Sys_SockaddrToString
- */
- static void Sys_SockaddrToString(char *dest, int destlen, struct sockaddr 
*input, int inputlen)
- {
-+/* OA's inputlen is incompatible with getnameinfo() on OpenBSD */
-+#ifdef __OpenBSD__
-+      struct sockaddr_in *s4;
-+      struct sockaddr_in6 *s6;
-+               
-+      if (input->sa_family == AF_INET) {
-+              s4 = (struct sockaddr_in *)(input);
-+              inet_ntop(AF_INET, (void *)&(s4->sin_addr), dest, destlen);
-+      } else if (input->sa_family == AF_INET6) {
-+              s6 = (struct sockaddr_in6 *)(input);
-+              inet_ntop(AF_INET6, (void *)&(s6->sin6_addr), dest, destlen);
-+      }
-+#else
-       getnameinfo(input, inputlen, dest, destlen, NULL, 0, NI_NUMERICHOST);
-+#endif
- }
- 
- /*
diff --git games/openarena/patches/patch-code_qcommon_q_platform_h 
games/openarena/patches/patch-code_qcommon_q_platform_h
index 9ca550b..c6b3d3f 100644
--- games/openarena/patches/patch-code_qcommon_q_platform_h
+++ games/openarena/patches/patch-code_qcommon_q_platform_h
@@ -1,7 +1,7 @@
 $OpenBSD: ports/games/openarena/patches/patch-code_qcommon_q_platform_h,v 
1.1.1.1 2008/10/27 13:29:02 weerd Exp $
---- code/qcommon/q_platform.h.orig     Sun Jun 29 16:00:45 2008
-+++ code/qcommon/q_platform.h  Fri Aug 22 21:20:21 2008
-@@ -170,7 +170,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+--- code/qcommon/q_platform.h.orig     Sat Dec 24 14:29:32 2011
++++ code/qcommon/q_platform.h  Tue Mar  6 22:44:31 2012
+@@ -209,7 +209,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
  
  //=================================================================== BSD ===
  
@@ -10,7 +10,7 @@ $OpenBSD: 
ports/games/openarena/patches/patch-code_qcommon_q_platform_h,v 1.1.1.
  
  #include <sys/types.h>
  #include <machine/endian.h>
-@@ -181,8 +181,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+@@ -220,8 +220,6 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
  
  #if defined(__FreeBSD__)
  #define OS_STRING "freebsd"
@@ -19,7 +19,7 @@ $OpenBSD: 
ports/games/openarena/patches/patch-code_qcommon_q_platform_h,v 1.1.1.
  #elif defined(__NetBSD__)
  #define OS_STRING "netbsd"
  #endif
-@@ -206,6 +204,29 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+@@ -247,6 +245,29 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
  
  #endif
  
diff --git games/openarena/patches/patch-code_qcommon_q_shared_h 
games/openarena/patches/patch-code_qcommon_q_shared_h
deleted file mode 100644
index 75f19c6..0000000
--- games/openarena/patches/patch-code_qcommon_q_shared_h
+++ /dev/null
@@ -1,15 +0,0 @@
-$OpenBSD: ports/games/openarena/patches/patch-code_qcommon_q_shared_h,v 1.1 
2010/05/27 03:47:28 jakemsr Exp $
---- code/qcommon/q_shared.h.orig       Mon May  3 04:41:00 2010
-+++ code/qcommon/q_shared.h    Mon May  3 04:41:20 2010
-@@ -157,9 +157,9 @@ typedef int                clipHandle_t;
- #define PAD(x,y) (((x)+(y)-1) & ~((y)-1))
- 
- #ifdef __GNUC__
--#define ALIGN(x) __attribute__((aligned(x)))
-+#define QALIGN(x) __attribute__((aligned(x)))
- #else
--#define ALIGN(x)
-+#define QALIGN(x)
- #endif
- 
- #ifndef NULL
diff --git games/openarena/patches/patch-code_qcommon_vm_interpreted_c 
games/openarena/patches/patch-code_qcommon_vm_interpreted_c
deleted file mode 100644
index 607d606..0000000
--- games/openarena/patches/patch-code_qcommon_vm_interpreted_c
+++ /dev/null
@@ -1,23 +0,0 @@
-$OpenBSD: ports/games/openarena/patches/patch-code_qcommon_vm_interpreted_c,v 
1.1 2009/02/03 19:48:42 kili Exp $
---- code/qcommon/vm_interpreted.c.orig Sat Aug  9 18:28:20 2008
-+++ code/qcommon/vm_interpreted.c      Sat Jan 10 21:23:02 2009
-@@ -532,8 +532,8 @@ nextInstruction2:
- 
- //VM_LogSyscalls( (int *)&image[ programStack + 4 ] );
-                               {
--                                      intptr_t* argptr = (intptr_t *)&image[ 
programStack + 4 ];
--                              #if __WORDSIZE == 64
-+                                      intptr_t* argptr;
-+                              #if LONG_BIT == 64
-                               // the vm has ints on the stack, we expect
-                               // longs so we have to convert it
-                                       intptr_t argarr[16];
-@@ -542,6 +542,8 @@ nextInstruction2:
-                                               argarr[i] = *(int*)&image[ 
programStack + 4 + 4*i ];
-                                       }
-                                       argptr = argarr;
-+                              #else
-+                                      argptr = (intptr_t *)&image[ 
programStack + 4 ];
-                               #endif
-                                       r = vm->systemCall( argptr );
-                               }
diff --git games/openarena/patches/patch-code_qcommon_vm_x86_64_c 
games/openarena/patches/patch-code_qcommon_vm_x86_64_c
new file mode 100644
index 0000000..2489187
--- /dev/null
+++ games/openarena/patches/patch-code_qcommon_vm_x86_64_c
@@ -0,0 +1,24 @@
+$OpenBSD$
+
+ * Add PROT_READ to x86 and x86_64 VM mmap calls[1]
+
+[1] According to OpenBSD's mmap(2):
+
+BUGS
+     Due to a limitation of the current vm system (see uvm(9)), mapping
+     descriptors PROT_WRITE without also specifying PROT_READ is useless
+     (results in a segmentation fault when first accessing the mapping).  This
+     means that such descriptors must be opened with O_RDWR, which requires
+     both read and write permissions on the underlying object.
+
+--- code/qcommon/vm_x86_64.c.orig      Sat Dec 24 14:29:32 2011
++++ code/qcommon/vm_x86_64.c   Sun Mar 11 15:22:24 2012
+@@ -445,7 +445,7 @@ void VM_Compile( vm_t *vm, vmHeader_t *header ) {
+               vm->codeLength = compiledOfs;
+ 
+               #ifdef VM_X86_64_MMAP
+-                      vm->codeBase = mmap(NULL, compiledOfs, PROT_WRITE, 
MAP_SHARED|MAP_ANONYMOUS, -1, 0);
++                      vm->codeBase = mmap(NULL, compiledOfs, 
PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, -1, 0);
+                       if(vm->codeBase == MAP_FAILED)
+                               Com_Error(ERR_FATAL, "VM_CompileX86_64: can't 
mmap memory");
+               #elif __WIN64__
diff --git games/openarena/patches/patch-code_qcommon_vm_x86_c 
games/openarena/patches/patch-code_qcommon_vm_x86_c
new file mode 100644
index 0000000..c68ca5a
--- /dev/null
+++ games/openarena/patches/patch-code_qcommon_vm_x86_c
@@ -0,0 +1,33 @@
+$OpenBSD$
+
+ * Add PROT_READ to x86 and x86_64 VM mmap calls[1]
+
+[1] According to OpenBSD's mmap(2):
+
+BUGS
+     Due to a limitation of the current vm system (see uvm(9)), mapping
+     descriptors PROT_WRITE without also specifying PROT_READ is useless
+     (results in a segmentation fault when first accessing the mapping).  This
+     means that such descriptors must be opened with O_RDWR, which requires
+     both read and write permissions on the underlying object.
+
+--- code/qcommon/vm_x86.c.orig Sat Dec 24 14:29:32 2011
++++ code/qcommon/vm_x86.c      Sun Mar 11 15:22:08 2012
+@@ -36,7 +36,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ 
+ /* need this on NX enabled systems (i386 with PAE kernel or
+  * noexec32=on x86_64) */
+-#if defined(__linux__) || defined(__FreeBSD__)
++#if defined(__linux__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+ #define VM_X86_MMAP
+ #endif
+ 
+@@ -1094,7 +1094,7 @@ void VM_Compile( vm_t *vm, vmHeader_t *header ) {
+       // copy to an exact size buffer on the hunk
+       vm->codeLength = compiledOfs;
+ #ifdef VM_X86_MMAP
+-      vm->codeBase = mmap(NULL, compiledOfs, PROT_WRITE, 
MAP_SHARED|MAP_ANONYMOUS, -1, 0);
++      vm->codeBase = mmap(NULL, compiledOfs, PROT_READ|PROT_WRITE, 
MAP_SHARED|MAP_ANONYMOUS, -1, 0);
+       if(vm->codeBase == MAP_FAILED)
+               Com_Error(ERR_FATAL, "VM_CompileX86: can't mmap memory");
+ #elif _WIN32
diff --git games/openarena/patches/patch-code_renderer_tr_local_h 
games/openarena/patches/patch-code_renderer_tr_local_h
deleted file mode 100644
index d24ad96..0000000
--- games/openarena/patches/patch-code_renderer_tr_local_h
+++ /dev/null
@@ -1,28 +0,0 @@
-$OpenBSD: ports/games/openarena/patches/patch-code_renderer_tr_local_h,v 1.1 
2010/05/27 03:47:28 jakemsr Exp $
---- code/renderer/tr_local.h.orig      Mon May  3 04:41:46 2010
-+++ code/renderer/tr_local.h   Mon May  3 04:42:13 2010
-@@ -1302,16 +1302,16 @@ typedef struct stageVars
- 
- typedef struct shaderCommands_s 
- {
--      glIndex_t       indexes[SHADER_MAX_INDEXES] ALIGN(16);
--      vec4_t          xyz[SHADER_MAX_VERTEXES] ALIGN(16);
--      vec4_t          normal[SHADER_MAX_VERTEXES] ALIGN(16);
--      vec2_t          texCoords[SHADER_MAX_VERTEXES][2] ALIGN(16);
--      color4ub_t      vertexColors[SHADER_MAX_VERTEXES] ALIGN(16);
--      int                     vertexDlightBits[SHADER_MAX_VERTEXES] ALIGN(16);
-+      glIndex_t       indexes[SHADER_MAX_INDEXES] QALIGN(16);
-+      vec4_t          xyz[SHADER_MAX_VERTEXES] QALIGN(16);
-+      vec4_t          normal[SHADER_MAX_VERTEXES] QALIGN(16);
-+      vec2_t          texCoords[SHADER_MAX_VERTEXES][2] QALIGN(16);
-+      color4ub_t      vertexColors[SHADER_MAX_VERTEXES] QALIGN(16);
-+      int                     vertexDlightBits[SHADER_MAX_VERTEXES] 
QALIGN(16);
- 
--      stageVars_t     svars ALIGN(16);
-+      stageVars_t     svars QALIGN(16);
- 
--      color4ub_t      constantColor255[SHADER_MAX_VERTEXES] ALIGN(16);
-+      color4ub_t      constantColor255[SHADER_MAX_VERTEXES] QALIGN(16);
- 
-       shader_t        *shader;
-   float   shaderTime;
diff --git games/openarena/patches/patch-code_renderer_tr_surface_c 
games/openarena/patches/patch-code_renderer_tr_surface_c
deleted file mode 100644
index b29f90c..0000000
--- games/openarena/patches/patch-code_renderer_tr_surface_c
+++ /dev/null
@@ -1,18 +0,0 @@
-$OpenBSD: ports/games/openarena/patches/patch-code_renderer_tr_surface_c,v 1.1 
2010/05/27 03:47:28 jakemsr Exp $
---- code/renderer/tr_surface.c.orig    Mon May  3 04:42:28 2010
-+++ code/renderer/tr_surface.c Mon May  3 04:42:47 2010
-@@ -615,10 +615,10 @@ static void LerpMeshVertexes_altivec(md3Surface_t *sur
- {
-       short   *oldXyz, *newXyz, *oldNormals, *newNormals;
-       float   *outXyz, *outNormal;
--      float   oldXyzScale ALIGN(16);
--      float   newXyzScale ALIGN(16);
--      float   oldNormalScale ALIGN(16);
--      float newNormalScale ALIGN(16);
-+      float   oldXyzScale QALIGN(16);
-+      float   newXyzScale QALIGN(16);
-+      float   oldNormalScale QALIGN(16);
-+      float newNormalScale QALIGN(16);
-       int             vertNum;
-       unsigned lat, lng;
-       int             numVerts;
diff --git games/openarena/pkg/PLIST-data games/openarena/pkg/PLIST-data
index 540ace8..f958b12 100644
--- games/openarena/pkg/PLIST-data
+++ games/openarena/pkg/PLIST-data
@@ -9,5 +9,6 @@ share/openarena/baseoa/pak4-textures.pk3
 share/openarena/baseoa/pak5-TA.pk3
 share/openarena/baseoa/pak6-misc.pk3
 share/openarena/baseoa/pak6-patch085.pk3
+share/openarena/baseoa/pak6-patch088.pk3
 share/openarena/missionpack/
 share/openarena/missionpack/mp-pak0.pk3

Reply via email to