On 11/14/14 15:51, Donovan Watteau wrote:
On Fri, 14 Nov 2014, Brian Callahan wrote:
Could you resend the diff? (and make sure it's still working on -current) July
was a long time ago...
Yes, it still works on -current.

Thanks. One of the patches doesn't apply cleanly but it's a patch that gets removed anyway.
Tests good on amd64. Someone else to give an ok?

~Brian

Here you go (there are some CRLF in patch-bam_0_2_0_src_base_bam
though):

Index: Makefile
===================================================================
RCS file: /cvs/ports/games/teeworlds/Makefile,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile
--- Makefile    9 Aug 2013 19:04:49 -0000       1.17
+++ Makefile    14 Nov 2014 20:45:41 -0000
@@ -1,60 +1,69 @@
  # $OpenBSD: Makefile,v 1.17 2013/08/09 19:04:49 ajacoutot Exp $
-COMMENT = platform game featuring buggers equipped with weapons
+# Crashes on strict-alignment archs, see: src/base/system.c:164
+ONLY_FOR_ARCHS=        amd64 i386 powerpc
-V = 0.5.2
-DISTNAME =     teeworlds-${V}-src
-PKGNAME =      teeworlds-${V}
-REVISION =     4
-CATEGORIES =   games
+COMMENT=       platform game featuring buggers equipped with weapons
-MAINTAINER = Jonathan Armani <arm...@openbsd.org>
-HOMEPAGE =     http://www.teeworlds.com/
+V=             0.6.2
+DISTNAME=      teeworlds-${V}-source
+PKGNAME=       teeworlds-${V}
+CATEGORIES=    games
-BAM_VERSION = 0.2.0
-BAM_WRKSRC =   ${WRKSRC}/bam-${BAM_VERSION}
-BAM_TARGET =   release
+HOMEPAGE=      http://www.teeworlds.com/
-MASTER_SITES = http://www.teeworlds.com/files/
-DISTFILES =    ${DISTNAME}${EXTRACT_SUFX} bam-${BAM_VERSION}${EXTRACT_SUFX}
+MAINTAINER=    Donovan Watteau <tso...@gmail.com>
-# GPLv2
-PERMIT_PACKAGE_CDROM = Yes
+BAM_VERSION=   0.4.0
+BAM_WRKSRC=    ${WRKSRC}/bam-${BAM_VERSION}
-WANTLIB = GL GLU SDL X11 c m pthread stdc++ z
-LIB_DEPENDS =  devel/sdl
+MASTER_SITES=  http://www.teeworlds.com/files/
+DISTFILES=     ${DISTNAME}${EXTRACT_SUFX} bam-${BAM_VERSION}${EXTRACT_SUFX}
-MODULES = lang/python
+# BSD-like
+PERMIT_PACKAGE_CDROM=  Yes
-NO_TEST = Yes
+WANTLIB=       GL GLU SDL X11 c freetype m pthread stdc++ wavpack z
-GAMEDIR = ${PREFIX}/share/teeworlds
+LIB_DEPENDS=   audio/wavpack \
+               devel/sdl
-SUBST_VARS = CC CXX CFLAGS
+MODULES=       lang/python
+
+SUBST_VARS=    CC CXX CFLAGS CXXFLAGS X11BASE
+
+NO_TEST=       Yes
post-extract:
        @mv ${WRKDIR}/bam-${BAM_VERSION} ${BAM_WRKSRC}
pre-configure:
-       ${SUBST_CMD} ${WRKSRC}/src/engine/e_engine.c \
-               ${WRKSRC}/scripts/make_src.py \
+       @${SUBST_CMD} ${WRKSRC}/src/engine/shared/storage.cpp \
+               ${WRKSRC}/src/game/client/gameclient.cpp \
+               ${WRKSRC}/scripts/build.py \
+               ${WRKSRC}/scripts/compiler.py \
                ${WRKSRC}/scripts/font_installer.sh \
-               ${WRKSRC}/default.bam \
+               ${WRKSRC}/scripts/make_src.py \
+               ${WRKSRC}/bam.lua \
                ${BAM_WRKSRC}/make_unix.sh \
-               ${BAM_WRKSRC}/src/driver_gcc.bam \
-               ${BAM_WRKSRC}/src/base.bam
+               ${BAM_WRKSRC}/src/driver_gcc.lua \
+               ${BAM_WRKSRC}/src/base.lua
+       # Make sure internal wavpack and zlib can't be picked up
+       rm -rf ${WRKSRC}/src/engine/external/{wavpack,zlib}
+       # Don't provide an extra copy of DejaVu
+       rm -rf ${WRKSRC}/data/fonts
# build bam executable - teeworlds own build system
  pre-build:
        cd ${BAM_WRKSRC} && /bin/sh -v make_unix.sh
do-build:
-       cd ${WRKSRC} && CC=${CC} ${BAM_WRKSRC}/src/bam -v ${BAM_TARGET}
+       cd ${WRKSRC} && CC=${CC} ${BAM_WRKSRC}/bam -a -v release 
wavpack=${LOCALBASE}
do-install:
        ${INSTALL_PROGRAM} ${WRKSRC}/teeworlds ${PREFIX}/bin
        ${INSTALL_PROGRAM} ${WRKSRC}/teeworlds_srv ${PREFIX}/bin
-       ${INSTALL_DATA_DIR} ${GAMEDIR}
-       cd ${WRKSRC}; tar cf - data | tar xf - -C ${GAMEDIR}
+       ${INSTALL_DATA_DIR} ${PREFIX}/share/teeworlds
+       cd ${WRKSRC}; tar cf - data | tar xf - -C ${PREFIX}/share/teeworlds
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/games/teeworlds/distinfo,v
retrieving revision 1.4
diff -u -p -r1.4 distinfo
--- distinfo    9 Aug 2013 19:04:49 -0000       1.4
+++ distinfo    14 Nov 2014 20:45:41 -0000
@@ -1,4 +1,4 @@
-SHA256 (bam-0.2.0.tar.gz) = 72zdwd9HsNgQYmUDPvTlXmHeyr8ieaKs1/3wFmM8B1g=
-SHA256 (teeworlds-0.5.2-src.tar.gz) = 
GBGnG/mhRwx6aTCANXREkvPoUK790S8bwiP7hdmM9MA=
-SIZE (bam-0.2.0.tar.gz) = 162342
-SIZE (teeworlds-0.5.2-src.tar.gz) = 6393472
+SHA256 (bam-0.4.0.tar.gz) = Xk5JILTSZdpYL2Z3TpseyN37513cAo+6hsEvaG6hjbM=
+SHA256 (teeworlds-0.6.2-source.tar.gz) = 
AAYbMDd1l6YYEO2j3F3gyq1DnKhRy47rvkFS5Phh4q8=
+SIZE (bam-0.4.0.tar.gz) = 206780
+SIZE (teeworlds-0.6.2-source.tar.gz) = 9179568
Index: patches/patch-bam-0_2_0_make_unix_sh
===================================================================
RCS file: patches/patch-bam-0_2_0_make_unix_sh
diff -N patches/patch-bam-0_2_0_make_unix_sh
--- patches/patch-bam-0_2_0_make_unix_sh        9 Aug 2013 19:04:49 -0000       
1.3
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,10 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_make_unix_sh,v 1.3 2013/08/09 19:04:49 ajacoutot Exp 
$
---- bam-0.2.0/make_unix.sh.orig        Thu Jan  8 13:07:44 2009
-+++ bam-0.2.0/make_unix.sh     Sun Feb  8 18:11:29 2009
-@@ -1,4 +1,4 @@
- #!/bin/sh
--gcc -Wall -ansi -pedantic src/tools/txt2c.c -o src/tools/txt2c
-+${CC} ${CFLAGS} -Wall -ansi -pedantic src/tools/txt2c.c -o src/tools/txt2c
- src/tools/txt2c src/base.bam src/driver_gcc.bam src/driver_cl.bam > 
src/internal_base.h
--gcc -Wall -ansi -pedantic src/lua/*.c src/*.c -o src/bam -I src/lua -lm 
-lpthread -O2 $*
-+${CC} ${CFLAGS} -Wall -ansi -pedantic src/lua/*.c src/*.c -o src/bam -I 
src/lua -lm -lpthread $*
Index: patches/patch-bam-0_2_0_src_base_bam
===================================================================
RCS file: patches/patch-bam-0_2_0_src_base_bam
diff -N patches/patch-bam-0_2_0_src_base_bam
--- patches/patch-bam-0_2_0_src_base_bam        18 Jan 2009 17:53:36 -0000      
1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_src_base_bam,v 1.1.1.1 2009/01/18 17:53:36 ajacoutot 
Exp $
---- bam-0.2.0/src/base.bam.orig        Fri Jan 16 18:46:07 2009
-+++ bam-0.2.0/src/base.bam     Fri Jan 16 18:46:33 2009
-@@ -589,7 +589,7 @@ end
- @END]]--
- function OptFindCompiler()
-       local check = function(option, settings)
--              if ExecuteSilent("g++ -v") == 0 then
-+              if ExecuteSilent("${CXX} -v") == 0 then
-                       option.value = "gcc"
-               elseif ExecuteSilent("cl") == 0 then
-                       option.value = "cl"
Index: patches/patch-bam-0_2_0_src_context_h
===================================================================
RCS file: patches/patch-bam-0_2_0_src_context_h
diff -N patches/patch-bam-0_2_0_src_context_h
--- patches/patch-bam-0_2_0_src_context_h       8 Feb 2009 22:31:58 -0000       
1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,24 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_src_context_h,v 1.1 2009/02/08 22:31:58 ajacoutot 
Exp $
-
-Fix bus error on sparc64.
-
---- bam-0.2.0/src/context.h.orig       Mon Feb  9 00:11:33 2009
-+++ bam-0.2.0/src/context.h    Mon Feb  9 00:09:59 2009
-@@ -5,7 +5,7 @@ struct TARGET
- {
-       struct NODE *node;
-       struct TARGET *next;
--};
-+} __attribute__((packed));
-
- struct CONTEXT
- {
-@@ -24,7 +24,7 @@ struct CONTEXT
-       
-       volatile int current_cmd_num;
-       int num_commands;
--};
-+} __attribute__((packed));
-
- const char *context_get_path(lua_State *L);
- struct CONTEXT *context_get_pointer(lua_State *L);
Index: patches/patch-bam-0_2_0_src_driver_gcc_bam
===================================================================
RCS file: patches/patch-bam-0_2_0_src_driver_gcc_bam
diff -N patches/patch-bam-0_2_0_src_driver_gcc_bam
--- patches/patch-bam-0_2_0_src_driver_gcc_bam  18 Jan 2009 17:53:36 -0000      
1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_src_driver_gcc_bam,v 1.1.1.1 2009/01/18 17:53:36 
ajacoutot Exp $
---- bam-0.2.0/src/driver_gcc.bam.orig  Fri Jan 16 18:44:47 2009
-+++ bam-0.2.0/src/driver_gcc.bam       Fri Jan 16 18:45:47 2009
-@@ -82,8 +82,8 @@ end
- function SetDriversGCC(settings)
-       if settings.cc then
-               settings.cc.extension = ".o"
--              settings.cc.c_compiler = "gcc"
--              settings.cc.cxx_compiler = "g++"
-+              settings.cc.c_compiler = "${CC} ${CFLAGS}"
-+              settings.cc.cxx_compiler = "${CXX} ${CFLAGS}"
-               settings.cc.DriverCTest = DriverCTest_GCC
-               settings.cc.DriverC = DriverC_GCC
-               settings.cc.DriverCXX = DriverCXX_GCC   
Index: patches/patch-bam-0_2_0_src_main_c
===================================================================
RCS file: patches/patch-bam-0_2_0_src_main_c
diff -N patches/patch-bam-0_2_0_src_main_c
--- patches/patch-bam-0_2_0_src_main_c  8 Feb 2009 16:54:54 -0000       1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,37 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_src_main_c,v 1.1 2009/02/08 16:54:54 ajacoutot Exp $
---- bam-0.2.0/src/main.c.orig  Sun Feb  8 18:09:12 2009
-+++ bam-0.2.0/src/main.c       Sun Feb  8 18:10:27 2009
-@@ -986,8 +986,8 @@ int register_lua_globals(struct CONTEXT *context)
-       
-       /* set paths */
-       {
--              char cwd[512];
--              getcwd(cwd, 512);
-+              char cwd[1024];
-+              getcwd(cwd, 1024);
-               
-               lua_pushstring(context->lua, CONTEXT_LUA_PATH);
-               lua_pushstring(context->lua, context->script_directory);
-@@ -1131,17 +1131,17 @@ static int bam(const char *scriptfile, const char **ta
-       
-       /* fetch script directory */
-       {
--              char cwd[512];
--              char path[512];
-+              char cwd[1024];
-+              char path[1024];
-
--              getcwd(cwd, 512);
--              if(path_directory(context.filename, path, 512))
-+              getcwd(cwd, 1024);
-+              if(path_directory(context.filename, path, 1024))
-               {
-                       printf("crap error1\n");
-                       *((int*)0) = 0;
-               }
-               
--              if(path_join(cwd, path, context.script_directory, 512))
-+              if(path_join(cwd, path, context.script_directory, 1024))
-               {
-                       printf("crap error2\n");
-                       *((int*)0) = 0;
Index: patches/patch-bam-0_2_0_src_node_h
===================================================================
RCS file: patches/patch-bam-0_2_0_src_node_h
diff -N patches/patch-bam-0_2_0_src_node_h
--- patches/patch-bam-0_2_0_src_node_h  8 Feb 2009 22:31:58 -0000       1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,24 +0,0 @@
-$OpenBSD: patch-bam-0_2_0_src_node_h,v 1.1 2009/02/08 22:31:58 ajacoutot Exp $
-
-Fix bus error on sparc64.
-
---- bam-0.2.0/src/node.h.orig  Mon Feb  9 00:11:20 2009
-+++ bam-0.2.0/src/node.h       Mon Feb  9 00:10:15 2009
-@@ -9,7 +9,7 @@ struct DEPENDENCY
- {
-       struct NODE *node;
-       struct DEPENDENCY *next;
--};
-+} __attribute__((packed));
-
- #define USE_NODE_RB
-
-@@ -55,7 +55,7 @@ struct NODE
-       unsigned int counted:1;
-       
-       volatile unsigned int workstatus:2; /* 0 = undone, 1 = in the workings, 
2 = done*/
--};
-+} __attribute__((packed));
-
- struct HEAP;
- struct GRAPH;
Index: patches/patch-bam-0_4_0_make_unix_sh
===================================================================
RCS file: patches/patch-bam-0_4_0_make_unix_sh
diff -N patches/patch-bam-0_4_0_make_unix_sh
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-bam-0_4_0_make_unix_sh        14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,13 @@
+$OpenBSD$
+
+Don't hardcode compiler path and flags.
+
+--- bam-0.4.0/make_unix.sh.orig        Mon Aug  9 20:08:24 2010
++++ bam-0.4.0/make_unix.sh     Sat Mar 17 15:05:51 2012
+@@ -1,4 +1,4 @@
+ #!/bin/sh
+-gcc -Wall -ansi -pedantic src/tools/txt2c.c -o src/tools/txt2c
++${CC} ${CFLAGS}  -Wall -ansi -pedantic src/tools/txt2c.c -o src/tools/txt2c
+ src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua src/driver_cl.lua 
> src/internal_base.h
+-gcc -Wall -ansi -pedantic src/*.c src/lua/*.c -o bam -I src/lua -lm -lpthread 
-ldl -O2 -rdynamic $*
++${CC} ${CFLAGS} -Wall -ansi -pedantic src/*.c src/lua/*.c -o bam -I src/lua 
-lm -lpthread -rdynamic $*
Index: patches/patch-bam-0_4_0_src_driver_gcc_lua
===================================================================
RCS file: patches/patch-bam-0_4_0_src_driver_gcc_lua
diff -N patches/patch-bam-0_4_0_src_driver_gcc_lua
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-bam-0_4_0_src_driver_gcc_lua  14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,52 @@
+$OpenBSD$
+
+Don't hardcode compiler path and flags.
+
+--- bam-0.4.0/src/driver_gcc.lua.orig  Mon Aug  9 20:08:24 2010
++++ bam-0.4.0/src/driver_gcc.lua       Sat Mar 17 15:14:24 2012
+@@ -13,7 +13,6 @@ function DriverGCC_Get(exe, cache_name, flags_name)
+                       local f = cc.flags:ToString()
+                       f = f .. cc[flags_name]:ToString()
+                       if settings.debug > 0 then f = f .. "-g " end
+-                      if settings.optimize > 0 then f = f .. "-O2 " end
+                       
+                       cache.str = cc[exe] .. " " .. f .. "-c " .. d .. i .. " -o 
"
+               end
+@@ -27,7 +26,7 @@ function DriverGCC_CTest(code, options)
+       f:write(code)
+       f:write("\n")
+       f:close()
+-      local ret = ExecuteSilent("gcc _test.c -o _test " .. options)
++      local ret = ExecuteSilent("${CC} _test.c -o _test " .. options)
+       os.remove("_test.c")
+       os.remove("_test")
+       return ret==0
+@@ -80,8 +79,8 @@ end
+ function SetDriversGCC(settings)
+       if settings.cc then
+               settings.cc.extension = ".o"
+-              settings.cc.exe_c = "gcc"
+-              settings.cc.exe_cxx = "g++"
++              settings.cc.exe_c = "${CC} ${CFLAGS}"
++              settings.cc.exe_cxx = "${CXX} ${CXXFLAGS}"
+               settings.cc.DriverCTest = DriverGCC_CTest
+               settings.cc.DriverC = DriverGCC_Get("exe_c", "_c_cache", 
"flags_c")
+               settings.cc.DriverCXX = DriverGCC_Get("exe_cxx", "_cxx_cache", 
"flags_cxx")
+@@ -89,7 +88,7 @@ function SetDriversGCC(settings)
+       
+       if settings.link then
+               settings.link.extension = ""
+-              settings.link.exe = "g++"
++              settings.link.exe = "${CXX}"
+               settings.link.Driver = DriverGCC_Link
+       end
+       
+@@ -108,7 +107,7 @@ function SetDriversGCC(settings)
+                       settings.dll.prefix = ""
+                       settings.dll.extension = ".so"
+               end
+-              settings.dll.exe = "g++"
++              settings.dll.exe = "${CXX}"
+               settings.dll.Driver = DriverGCC_DLL
+       end
+ end
Index: patches/patch-bam_lua
===================================================================
RCS file: patches/patch-bam_lua
diff -N patches/patch-bam_lua
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-bam_lua       14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,73 @@
+$OpenBSD$
+
+- Don't enforce stack protector
+- Don't hardcode python
+- Make it possible to use wavpack as an external dependency (from Debian)
+- Fix zlib external dependency (from Debian)
+
+--- bam.lua.orig       Wed May  1 13:47:39 2013
++++ bam.lua    Thu May  8 16:13:57 2014
+@@ -7,12 +7,12 @@ Import("other/freetype/freetype.lua")
+ --- Setup Config -------
+ config = NewConfig()
+ config:Add(OptCCompiler("compiler"))
+-config:Add(OptTestCompileC("stackprotector", "int main(){return 0;}", 
"-fstack-protector -fstack-protector-all"))
+ config:Add(OptTestCompileC("minmacosxsdk", "int main(){return 0;}", 
"-mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk"))
+ config:Add(OptTestCompileC("macosxppc", "int main(){return 0;}", "-arch ppc"))
+ config:Add(OptLibrary("zlib", "zlib.h", false))
+ config:Add(SDL.OptFind("sdl", true))
+ config:Add(FreeType.OptFind("freetype", true))
++config:Add(OptLibrary("wavpack", "wavpack/wavpack.h", false))
+ config:Finalize("config.lua")
+
+ -- data compiler
+@@ -20,7 +20,7 @@ function Script(name)
+       if family == "windows" then
+               return str_replace(name, "/", "\\")
+       end
+-      return "python " .. name
++      return "${MODPY_BIN} " .. name
+ end
+
+ function CHash(output, ...)
+@@ -157,9 +157,6 @@ function build(settings)
+                               settings.cc.flags:Add("-isysroot 
/Developer/SDKs/MacOSX10.5.sdk")
+                               settings.link.flags:Add("-isysroot 
/Developer/SDKs/MacOSX10.5.sdk")
+                       end
+-              elseif config.stackprotector.value == 1 then
+-                      settings.cc.flags:Add("-fstack-protector", 
"-fstack-protector-all")
+-                      settings.link.flags:Add("-fstack-protector", 
"-fstack-protector-all")
+               end
+       end
+
+@@ -187,7 +184,7 @@ function build(settings)
+       end
+
+       -- compile zlib if needed
+-      if config.zlib.value == 1 then
++      if config.zlib.value then
+               settings.link.libs:Add("z")
+               if config.zlib.include_path then
+                       settings.cc.includes:Add(config.zlib.include_path)
+@@ -198,8 +195,20 @@ function build(settings)
+               settings.cc.includes:Add("src/engine/external/zlib")
+       end
+
++      -- compile wavpack if needed
++      if config.wavpack.value then
++              settings.link.libs:Add("wavpack")
++              if config.wavpack.include_path then
++                      settings.cc.includes:Add(config.wavpack.include_path .. 
"/include")
++                      settings.link.libpath:Add(config.wavpack.include_path .. 
"/lib")
++              end
++              wavpack = {}
++      else
++              wavpack = Compile(settings, 
Collect("src/engine/external/wavpack/*.c"))
++              settings.cc.includes:Add("src/engine/external")
++      end
++
+       -- build the small libraries
+-      wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c"))
+       pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c"))
+
+       -- build game components
Index: patches/patch-default_bam
===================================================================
RCS file: patches/patch-default_bam
diff -N patches/patch-default_bam
--- patches/patch-default_bam   5 Apr 2009 16:59:40 -0000       1.2
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,21 +0,0 @@
-$OpenBSD: patch-default_bam,v 1.2 2009/04/05 16:59:40 ajacoutot Exp $
---- default.bam.orig   Thu Mar  5 11:41:17 2009
-+++ default.bam        Thu Mar  5 11:41:53 2009
-@@ -15,7 +15,7 @@ function Script(name)
-       if family == "windows" then
-               return str_replace(name, "/", "\\")
-       end
--      return "python " .. name
-+      return "${MODPY_BIN} " .. name
- end
-
- function CHash(output, ...)
-@@ -128,7 +128,7 @@ function build(settings)
-                       settings.link.frameworks:Add("Carbon")
-                       settings.link.frameworks:Add("AppKit")
-               else
--                      settings.link.libs:Add("pthread")
-+                      settings.link.flags:Add("-pthread")
-               end
-       elseif family == "windows" then
-               settings.link.libs:Add("gdi32")
Index: patches/patch-scripts_build_py
===================================================================
RCS file: patches/patch-scripts_build_py
diff -N patches/patch-scripts_build_py
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-scripts_build_py      14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- scripts/build.py.orig      Sun Jul 31 23:17:00 2011
++++ scripts/build.py   Sat Mar 17 15:19:47 2012
+@@ -276,7 +276,7 @@ if flag_make_release:
+       os.chdir(src_dir_teeworlds)
+       command = '"%s/%s/scripts/make_release.py" %s %s' % (work_dir, 
src_dir_teeworlds, version_teeworlds, platform)
+       if os.name != "nt":
+-              command = "python %s" % command
++              command = "${MODPY_BIN} %s" % command
+       if os.system(command) != 0:
+               bail("failed to make a relase of %s" % name)
+       final_output = "FAIL"
Index: patches/patch-scripts_compiler_py
===================================================================
RCS file: patches/patch-scripts_compiler_py
diff -N patches/patch-scripts_compiler_py
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-scripts_compiler_py   14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,9 @@
+$OpenBSD$
+--- scripts/compiler.py.orig   Sun Jul 31 23:17:00 2011
++++ scripts/compiler.py        Sat Mar 17 15:22:43 2012
+@@ -1,4 +1,4 @@
+-#!/usr/bin/python
++#!${MODPY_BIN}
+
+ import sys
+ import struct
Index: patches/patch-scripts_make_src_py
===================================================================
RCS file: patches/patch-scripts_make_src_py
diff -N patches/patch-scripts_make_src_py
--- patches/patch-scripts_make_src_py   18 Jan 2009 17:53:36 -0000      1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-scripts_make_src_py,v 1.1.1.1 2009/01/18 17:53:36 ajacoutot 
Exp $
---- scripts/make_src.py.orig   Fri Jan 16 17:17:44 2009
-+++ scripts/make_src.py        Fri Jan 16 17:18:15 2009
-@@ -34,7 +34,7 @@ os.chdir(root_dir)
- if 1:
-       os.system("svn export svn://svn.teeworlds.com/teeworlds/%s teeworlds" % 
svn_tree)
-       os.chdir("teeworlds")
--      os.system("python scripts/make_release.py %s src" % version)
-+      os.system("${MODPY_BIN} scripts/make_release.py %s src" % version)
-       os.chdir(root_dir)
-       for f in os.listdir("teeworlds"):
-               if "teeworlds" in f and "src" in f and (".zip" in f or 
".tar.gz" in f):
Index: patches/patch-src_base_detect_h
===================================================================
RCS file: patches/patch-src_base_detect_h
diff -N patches/patch-src_base_detect_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_base_detect_h     14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,24 @@
+$OpenBSD$
+
+Fix endianness detection.
+
+--- src/base/detect.h.orig     Wed May  1 13:47:39 2013
++++ src/base/detect.h  Thu May  8 14:52:51 2014
+@@ -79,14 +79,15 @@
+ /* use gcc endianness definitions when available */
+ #if defined(__GNUC__) && !defined(__APPLE__) && !defined(__MINGW32__) && 
!defined(__sun)
+       #if defined(__FreeBSD__) || defined(__OpenBSD__)
++              #include <sys/types.h>
+               #include <sys/endian.h>
+       #else
+               #include <endian.h>
+       #endif
+
+-      #if __BYTE_ORDER == __LITTLE_ENDIAN
++      #if BYTE_ORDER == LITTLE_ENDIAN
+               #define CONF_ARCH_ENDIAN_LITTLE 1
+-      #elif __BYTE_ORDER == __BIG_ENDIAN
++      #elif BYTE_ORDER == BIG_ENDIAN
+               #define CONF_ARCH_ENDIAN_BIG 1
+       #endif
+ #endif
Index: patches/patch-src_engine_client_ec_snd_c
===================================================================
RCS file: patches/patch-src_engine_client_ec_snd_c
diff -N patches/patch-src_engine_client_ec_snd_c
--- patches/patch-src_engine_client_ec_snd_c    10 Feb 2009 00:32:43 -0000      
1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,38 +0,0 @@
-$OpenBSD: patch-src_engine_client_ec_snd_c,v 1.1 2009/02/10 00:32:43 sthen Exp 
$
---- src/engine/client/ec_snd.c.orig    Tue Jan 27 11:41:17 2009
-+++ src/engine/client/ec_snd.c Tue Jan 27 12:30:08 2009
-@@ -139,10 +139,19 @@ static int iabs(int i)
-
- static void mix(short *final_out, unsigned frames)
- {
--      int mix_buffer[MAX_FRAMES*2] = {0};
--      int i, s;
-+      int *mix_buffer;
-+      int i, s, mix_buffer_size;
-       int master_vol;
-
-+      mix_buffer_size = frames * 2 * sizeof(int);
-+      mix_buffer = malloc(mix_buffer_size);
-+      if (mix_buffer == NULL)
-+      {
-+              printf("malloc failed");
-+              return;
-+      }
-+      bzero(mix_buffer, mix_buffer_size);
-+
-       /* aquire lock while we are mixing */
-       lock_wait(sound_lock);
-       
-@@ -239,6 +248,12 @@ static void mix(short *final_out, unsigned frames)
- #if defined(CONF_ARCH_ENDIAN_BIG)
-       swap_endian(final_out, sizeof(short), frames * 2);
- #endif
-+
-+      if(mix_buffer != NULL) {
-+              free(mix_buffer);
-+              mix_buffer = NULL;
-+      }
-+      
- }
-
- static void sdlcallback(void *unused, Uint8 *stream, int len)
Index: patches/patch-src_engine_client_sound_cpp
===================================================================
RCS file: patches/patch-src_engine_client_sound_cpp
diff -N patches/patch-src_engine_client_sound_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_engine_client_sound_cpp   14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,82 @@
+$OpenBSD$
+
+Make it possible to compile with an external and newer wavpack.
+From Debian.
+
+--- src/engine/client/sound.cpp.orig   Wed May  1 13:47:39 2013
++++ src/engine/client/sound.cpp        Thu May  8 16:00:47 2014
+@@ -13,7 +13,7 @@
+ #include "sound.h"
+
+ extern "C" { // wavpack
+-      #include <engine/external/wavpack/wavpack.h>
++      #include <wavpack/wavpack.h>
+ }
+ #include <math.h>
+
+@@ -328,17 +328,14 @@ void CSound::RateConvert(int SampleID)
+       pSample->m_NumFrames = NumFrames;
+ }
+
+-int CSound::ReadData(void *pBuffer, int Size)
+-{
+-      return io_read(ms_File, pBuffer, Size);
+-}
+-
+ int CSound::LoadWV(const char *pFilename)
+ {
+       CSample *pSample;
+       int SampleID = -1;
+       char aError[100];
+       WavpackContext *pContext;
++      char aWholePath[1024];
++      IOHANDLE File;
+
+       // don't waste memory on sound when we are stress testing
+       if(g_Config.m_DbgStress)
+@@ -351,19 +348,23 @@ int CSound::LoadWV(const char *pFilename)
+       if(!m_pStorage)
+               return -1;
+
+-      ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, 
IStorage::TYPE_ALL);
+-      if(!ms_File)
++      File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL, 
aWholePath, sizeof(aWholePath));
++      if(!File)
+       {
+               dbg_msg("sound/wv", "failed to open file. filename='%s'", 
pFilename);
+               return -1;
+       }
++      else
++      {
++              io_close(File);
++      }
+
+       SampleID = AllocID();
+       if(SampleID < 0)
+               return -1;
+       pSample = &m_aSamples[SampleID];
+
+-      pContext = WavpackOpenFileInput(ReadData, aError);
++      pContext = WavpackOpenFileInput(aWholePath, aError, OPEN_2CH_MAX, 0);
+       if (pContext)
+       {
+               int m_aSamples = WavpackGetNumSamples(pContext);
+@@ -419,9 +420,6 @@ int CSound::LoadWV(const char *pFilename)
+               dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError);
+       }
+
+-      io_close(ms_File);
+-      ms_File = NULL;
+-
+       if(g_Config.m_Debug)
+               dbg_msg("sound/wv", "loaded %s", pFilename);
+
+@@ -526,8 +524,6 @@ void CSound::StopAll()
+       }
+       lock_release(m_SoundLock);
+ }
+-
+-IOHANDLE CSound::ms_File = 0;
+
+ IEngineSound *CreateEngineSound() { return new CSound; }
+
Index: patches/patch-src_engine_client_sound_h
===================================================================
RCS file: patches/patch-src_engine_client_sound_h
diff -N patches/patch-src_engine_client_sound_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_engine_client_sound_h     14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,18 @@
+$OpenBSD$
+
+Make it possible to compile with an external and newer wavpack.
+From Debian.
+
+--- src/engine/client/sound.h.orig     Wed May  1 13:47:39 2013
++++ src/engine/client/sound.h  Thu May  8 15:58:08 2014
+@@ -21,10 +21,6 @@ class CSound : public IEngineSound (public)
+
+       static void RateConvert(int SampleID);
+
+-      // TODO: Refactor: clean this mess up
+-      static IOHANDLE ms_File;
+-      static int ReadData(void *pBuffer, int Size);
+-
+       virtual bool IsSoundEnabled() { return m_SoundEnabled != 0; }
+
+       virtual int LoadWV(const char *pFilename);
Index: patches/patch-src_engine_e_engine_c
===================================================================
RCS file: patches/patch-src_engine_e_engine_c
diff -N patches/patch-src_engine_e_engine_c
--- patches/patch-src_engine_e_engine_c 18 Jan 2009 17:53:36 -0000      1.1.1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-src_engine_e_engine_c,v 1.1.1.1 2009/01/18 17:53:36 ajacoutot 
Exp $
---- src/engine/e_engine.c.orig Fri Jan 16 17:15:42 2009
-+++ src/engine/e_engine.c      Fri Jan 16 17:16:30 2009
-@@ -13,7 +13,7 @@
- #include "e_linereader.h"
-
- /* compiled-in data-dir path */
--#define DATA_DIR "data"
-+#define DATA_DIR "${PREFIX}/share/teeworlds/data"
-
- static JOBPOOL hostlookuppool;
- static int engine_find_datadir(char *argv0);
Index: patches/patch-src_engine_shared_storage_cpp
===================================================================
RCS file: patches/patch-src_engine_shared_storage_cpp
diff -N patches/patch-src_engine_shared_storage_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_engine_shared_storage_cpp 14 Nov 2014 20:45:41 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- src/engine/shared/storage.cpp.orig Sun Jul 31 23:17:00 2011
++++ src/engine/shared/storage.cpp      Sat Mar 17 15:21:21 2012
+@@ -5,7 +5,7 @@
+ #include "linereader.h"
+
+ // compiled-in data-dir path
+-#define DATA_DIR "data"
++#define DATA_DIR "${PREFIX}/share/teeworlds/data"
+
+ class CStorage : public IStorage
+ {
Index: patches/patch-src_game_client_gameclient_cpp
===================================================================
RCS file: patches/patch-src_game_client_gameclient_cpp
diff -N patches/patch-src_game_client_gameclient_cpp
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_game_client_gameclient_cpp        14 Nov 2014 20:45:41 
-0000
@@ -0,0 +1,24 @@
+$OpenBSD$
+
+Don't require a local copy of DejavuSans.ttf.
+
+--- src/game/client/gameclient.cpp.orig        Wed May  1 13:47:39 2013
++++ src/game/client/gameclient.cpp     Thu May  8 16:59:57 2014
+@@ -240,7 +240,7 @@ void CGameClient::OnInit()
+       // load default font
+       static CFont *pDefaultFont = 0;
+       char aFilename[512];
+-      IOHANDLE File = Storage()->OpenFile("fonts/DejaVuSans.ttf", 
IOFLAG_READ, IStorage::TYPE_ALL, aFilename, sizeof(aFilename));
++      IOHANDLE File = 
Storage()->OpenFile("${X11BASE}/lib/X11/fonts/TTF/DejaVuSans.ttf", IOFLAG_READ, 
IStorage::TYPE_ALL, aFilename, sizeof(aFilename));
+       if(File)
+       {
+               io_close(File);
+@@ -248,7 +248,7 @@ void CGameClient::OnInit()
+               TextRender()->SetDefaultFont(pDefaultFont);
+       }
+       if(!pDefaultFont)
+-              Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, "gameclient", 
"failed to load font. filename='fonts/DejaVuSans.ttf'");
++              Console()->Print(IConsole::OUTPUT_LEVEL_STANDARD, "gameclient", 
"failed to load font. filename='DejaVuSans.ttf'");
+
+       // init all components
+       for(int i = m_All.m_Num-1; i >= 0; --i)
Index: pkg/DESCR
===================================================================
RCS file: /cvs/ports/games/teeworlds/pkg/DESCR,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 DESCR
--- pkg/DESCR   18 Jan 2009 17:53:36 -0000      1.1.1.1
+++ pkg/DESCR   14 Nov 2014 20:45:41 -0000
@@ -1,3 +1,3 @@
-Teeworlds is a free online multiplayer game, available for all major
-operating systems. Battle with up to 16 players in a variety of game
+Teeworlds is a free online multiplayer game, available for all major
+operating systems. Battle with up to 16 players in a variety of game
  modes, including Team Deathmatch and Capture The Flag.
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/games/teeworlds/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 PLIST
--- pkg/PLIST   18 Jan 2009 17:53:36 -0000      1.1.1.1
+++ pkg/PLIST   14 Nov 2014 20:45:41 -0000
@@ -34,6 +34,7 @@ share/teeworlds/data/audio/hook_loop-02.
  share/teeworlds/data/audio/hook_noattach-01.wv
  share/teeworlds/data/audio/hook_noattach-02.wv
  share/teeworlds/data/audio/hook_noattach-03.wv
+share/teeworlds/data/audio/music_menu.wv
  share/teeworlds/data/audio/sfx_ctf_cap_pl.wv
  share/teeworlds/data/audio/sfx_ctf_drop.wv
  share/teeworlds/data/audio/sfx_ctf_grab_en.wv
@@ -45,6 +46,7 @@ share/teeworlds/data/audio/sfx_hit_weak-
  share/teeworlds/data/audio/sfx_hit_weak-02.wv
  share/teeworlds/data/audio/sfx_hit_weak-03.wv
  share/teeworlds/data/audio/sfx_msg-client.wv
+share/teeworlds/data/audio/sfx_msg-highlight.wv
  share/teeworlds/data/audio/sfx_msg-server.wv
  share/teeworlds/data/audio/sfx_pickup_arm-01.wv
  share/teeworlds/data/audio/sfx_pickup_arm-02.wv
@@ -137,73 +139,317 @@ share/teeworlds/data/blob.png
  share/teeworlds/data/browse_icons.png
  share/teeworlds/data/console.png
  share/teeworlds/data/console_bar.png
+share/teeworlds/data/countryflags/
+share/teeworlds/data/countryflags/AD.png
+share/teeworlds/data/countryflags/AE.png
+share/teeworlds/data/countryflags/AF.png
+share/teeworlds/data/countryflags/AG.png
+share/teeworlds/data/countryflags/AI.png
+share/teeworlds/data/countryflags/AL.png
+share/teeworlds/data/countryflags/AM.png
+share/teeworlds/data/countryflags/AO.png
+share/teeworlds/data/countryflags/AR.png
+share/teeworlds/data/countryflags/AS.png
+share/teeworlds/data/countryflags/AT.png
+share/teeworlds/data/countryflags/AU.png
+share/teeworlds/data/countryflags/AW.png
+share/teeworlds/data/countryflags/AX.png
+share/teeworlds/data/countryflags/AZ.png
+share/teeworlds/data/countryflags/BA.png
+share/teeworlds/data/countryflags/BB.png
+share/teeworlds/data/countryflags/BD.png
+share/teeworlds/data/countryflags/BE.png
+share/teeworlds/data/countryflags/BF.png
+share/teeworlds/data/countryflags/BG.png
+share/teeworlds/data/countryflags/BH.png
+share/teeworlds/data/countryflags/BI.png
+share/teeworlds/data/countryflags/BJ.png
+share/teeworlds/data/countryflags/BL.png
+share/teeworlds/data/countryflags/BM.png
+share/teeworlds/data/countryflags/BN.png
+share/teeworlds/data/countryflags/BO.png
+share/teeworlds/data/countryflags/BR.png
+share/teeworlds/data/countryflags/BS.png
+share/teeworlds/data/countryflags/BT.png
+share/teeworlds/data/countryflags/BW.png
+share/teeworlds/data/countryflags/BY.png
+share/teeworlds/data/countryflags/BZ.png
+share/teeworlds/data/countryflags/CA.png
+share/teeworlds/data/countryflags/CC.png
+share/teeworlds/data/countryflags/CD.png
+share/teeworlds/data/countryflags/CF.png
+share/teeworlds/data/countryflags/CG.png
+share/teeworlds/data/countryflags/CH.png
+share/teeworlds/data/countryflags/CI.png
+share/teeworlds/data/countryflags/CK.png
+share/teeworlds/data/countryflags/CL.png
+share/teeworlds/data/countryflags/CM.png
+share/teeworlds/data/countryflags/CN.png
+share/teeworlds/data/countryflags/CO.png
+share/teeworlds/data/countryflags/CR.png
+share/teeworlds/data/countryflags/CU.png
+share/teeworlds/data/countryflags/CV.png
+share/teeworlds/data/countryflags/CW.png
+share/teeworlds/data/countryflags/CX.png
+share/teeworlds/data/countryflags/CY.png
+share/teeworlds/data/countryflags/CZ.png
+share/teeworlds/data/countryflags/DE.png
+share/teeworlds/data/countryflags/DJ.png
+share/teeworlds/data/countryflags/DK.png
+share/teeworlds/data/countryflags/DM.png
+share/teeworlds/data/countryflags/DO.png
+share/teeworlds/data/countryflags/DZ.png
+share/teeworlds/data/countryflags/EC.png
+share/teeworlds/data/countryflags/EE.png
+share/teeworlds/data/countryflags/EG.png
+share/teeworlds/data/countryflags/EH.png
+share/teeworlds/data/countryflags/ER.png
+share/teeworlds/data/countryflags/ES.png
+share/teeworlds/data/countryflags/ET.png
+share/teeworlds/data/countryflags/FI.png
+share/teeworlds/data/countryflags/FJ.png
+share/teeworlds/data/countryflags/FK.png
+share/teeworlds/data/countryflags/FM.png
+share/teeworlds/data/countryflags/FO.png
+share/teeworlds/data/countryflags/FR.png
+share/teeworlds/data/countryflags/GA.png
+share/teeworlds/data/countryflags/GB.png
+share/teeworlds/data/countryflags/GD.png
+share/teeworlds/data/countryflags/GE.png
+share/teeworlds/data/countryflags/GF.png
+share/teeworlds/data/countryflags/GG.png
+share/teeworlds/data/countryflags/GH.png
+share/teeworlds/data/countryflags/GI.png
+share/teeworlds/data/countryflags/GL.png
+share/teeworlds/data/countryflags/GM.png
+share/teeworlds/data/countryflags/GN.png
+share/teeworlds/data/countryflags/GP.png
+share/teeworlds/data/countryflags/GQ.png
+share/teeworlds/data/countryflags/GR.png
+share/teeworlds/data/countryflags/GS.png
+share/teeworlds/data/countryflags/GT.png
+share/teeworlds/data/countryflags/GU.png
+share/teeworlds/data/countryflags/GW.png
+share/teeworlds/data/countryflags/GY.png
+share/teeworlds/data/countryflags/HK.png
+share/teeworlds/data/countryflags/HN.png
+share/teeworlds/data/countryflags/HR.png
+share/teeworlds/data/countryflags/HT.png
+share/teeworlds/data/countryflags/HU.png
+share/teeworlds/data/countryflags/ID.png
+share/teeworlds/data/countryflags/IE.png
+share/teeworlds/data/countryflags/IL.png
+share/teeworlds/data/countryflags/IM.png
+share/teeworlds/data/countryflags/IN.png
+share/teeworlds/data/countryflags/IO.png
+share/teeworlds/data/countryflags/IQ.png
+share/teeworlds/data/countryflags/IR.png
+share/teeworlds/data/countryflags/IS.png
+share/teeworlds/data/countryflags/IT.png
+share/teeworlds/data/countryflags/JE.png
+share/teeworlds/data/countryflags/JM.png
+share/teeworlds/data/countryflags/JO.png
+share/teeworlds/data/countryflags/JP.png
+share/teeworlds/data/countryflags/KE.png
+share/teeworlds/data/countryflags/KG.png
+share/teeworlds/data/countryflags/KH.png
+share/teeworlds/data/countryflags/KI.png
+share/teeworlds/data/countryflags/KM.png
+share/teeworlds/data/countryflags/KN.png
+share/teeworlds/data/countryflags/KP.png
+share/teeworlds/data/countryflags/KR.png
+share/teeworlds/data/countryflags/KW.png
+share/teeworlds/data/countryflags/KY.png
+share/teeworlds/data/countryflags/KZ.png
+share/teeworlds/data/countryflags/LA.png
+share/teeworlds/data/countryflags/LB.png
+share/teeworlds/data/countryflags/LC.png
+share/teeworlds/data/countryflags/LI.png
+share/teeworlds/data/countryflags/LK.png
+share/teeworlds/data/countryflags/LR.png
+share/teeworlds/data/countryflags/LS.png
+share/teeworlds/data/countryflags/LT.png
+share/teeworlds/data/countryflags/LU.png
+share/teeworlds/data/countryflags/LV.png
+share/teeworlds/data/countryflags/LY.png
+share/teeworlds/data/countryflags/MA.png
+share/teeworlds/data/countryflags/MC.png
+share/teeworlds/data/countryflags/MD.png
+share/teeworlds/data/countryflags/ME.png
+share/teeworlds/data/countryflags/MF.png
+share/teeworlds/data/countryflags/MG.png
+share/teeworlds/data/countryflags/MH.png
+share/teeworlds/data/countryflags/MK.png
+share/teeworlds/data/countryflags/ML.png
+share/teeworlds/data/countryflags/MM.png
+share/teeworlds/data/countryflags/MN.png
+share/teeworlds/data/countryflags/MO.png
+share/teeworlds/data/countryflags/MP.png
+share/teeworlds/data/countryflags/MQ.png
+share/teeworlds/data/countryflags/MR.png
+share/teeworlds/data/countryflags/MS.png
+share/teeworlds/data/countryflags/MT.png
+share/teeworlds/data/countryflags/MU.png
+share/teeworlds/data/countryflags/MV.png
+share/teeworlds/data/countryflags/MW.png
+share/teeworlds/data/countryflags/MX.png
+share/teeworlds/data/countryflags/MY.png
+share/teeworlds/data/countryflags/MZ.png
+share/teeworlds/data/countryflags/NA.png
+share/teeworlds/data/countryflags/NC.png
+share/teeworlds/data/countryflags/NE.png
+share/teeworlds/data/countryflags/NF.png
+share/teeworlds/data/countryflags/NG.png
+share/teeworlds/data/countryflags/NI.png
+share/teeworlds/data/countryflags/NL.png
+share/teeworlds/data/countryflags/NO.png
+share/teeworlds/data/countryflags/NP.png
+share/teeworlds/data/countryflags/NR.png
+share/teeworlds/data/countryflags/NU.png
+share/teeworlds/data/countryflags/NZ.png
+share/teeworlds/data/countryflags/OM.png
+share/teeworlds/data/countryflags/PA.png
+share/teeworlds/data/countryflags/PE.png
+share/teeworlds/data/countryflags/PF.png
+share/teeworlds/data/countryflags/PG.png
+share/teeworlds/data/countryflags/PH.png
+share/teeworlds/data/countryflags/PK.png
+share/teeworlds/data/countryflags/PL.png
+share/teeworlds/data/countryflags/PM.png
+share/teeworlds/data/countryflags/PN.png
+share/teeworlds/data/countryflags/PR.png
+share/teeworlds/data/countryflags/PT.png
+share/teeworlds/data/countryflags/PW.png
+share/teeworlds/data/countryflags/PY.png
+share/teeworlds/data/countryflags/QA.png
+share/teeworlds/data/countryflags/RE.png
+share/teeworlds/data/countryflags/RO.png
+share/teeworlds/data/countryflags/RS.png
+share/teeworlds/data/countryflags/RU.png
+share/teeworlds/data/countryflags/RW.png
+share/teeworlds/data/countryflags/SA.png
+share/teeworlds/data/countryflags/SB.png
+share/teeworlds/data/countryflags/SC.png
+share/teeworlds/data/countryflags/SD.png
+share/teeworlds/data/countryflags/SE.png
+share/teeworlds/data/countryflags/SG.png
+share/teeworlds/data/countryflags/SH.png
+share/teeworlds/data/countryflags/SI.png
+share/teeworlds/data/countryflags/SK.png
+share/teeworlds/data/countryflags/SL.png
+share/teeworlds/data/countryflags/SM.png
+share/teeworlds/data/countryflags/SN.png
+share/teeworlds/data/countryflags/SO.png
+share/teeworlds/data/countryflags/SR.png
+share/teeworlds/data/countryflags/SS.png
+share/teeworlds/data/countryflags/ST.png
+share/teeworlds/data/countryflags/SV.png
+share/teeworlds/data/countryflags/SX.png
+share/teeworlds/data/countryflags/SY.png
+share/teeworlds/data/countryflags/SZ.png
+share/teeworlds/data/countryflags/TC.png
+share/teeworlds/data/countryflags/TD.png
+share/teeworlds/data/countryflags/TF.png
+share/teeworlds/data/countryflags/TG.png
+share/teeworlds/data/countryflags/TH.png
+share/teeworlds/data/countryflags/TJ.png
+share/teeworlds/data/countryflags/TK.png
+share/teeworlds/data/countryflags/TL.png
+share/teeworlds/data/countryflags/TM.png
+share/teeworlds/data/countryflags/TN.png
+share/teeworlds/data/countryflags/TO.png
+share/teeworlds/data/countryflags/TR.png
+share/teeworlds/data/countryflags/TT.png
+share/teeworlds/data/countryflags/TV.png
+share/teeworlds/data/countryflags/TW.png
+share/teeworlds/data/countryflags/TZ.png
+share/teeworlds/data/countryflags/UA.png
+share/teeworlds/data/countryflags/UG.png
+share/teeworlds/data/countryflags/US.png
+share/teeworlds/data/countryflags/UY.png
+share/teeworlds/data/countryflags/UZ.png
+share/teeworlds/data/countryflags/VA.png
+share/teeworlds/data/countryflags/VC.png
+share/teeworlds/data/countryflags/VE.png
+share/teeworlds/data/countryflags/VG.png
+share/teeworlds/data/countryflags/VI.png
+share/teeworlds/data/countryflags/VN.png
+share/teeworlds/data/countryflags/VU.png
+share/teeworlds/data/countryflags/WF.png
+share/teeworlds/data/countryflags/WS.png
+share/teeworlds/data/countryflags/XEN.png
+share/teeworlds/data/countryflags/XNI.png
+share/teeworlds/data/countryflags/XSC.png
+share/teeworlds/data/countryflags/XWA.png
+share/teeworlds/data/countryflags/YE.png
+share/teeworlds/data/countryflags/ZA.png
+share/teeworlds/data/countryflags/ZM.png
+share/teeworlds/data/countryflags/ZW.png
+share/teeworlds/data/countryflags/default.png
+share/teeworlds/data/countryflags/index.txt
  share/teeworlds/data/debug_font.png
+share/teeworlds/data/demo_buttons.png
  share/teeworlds/data/editor/
  share/teeworlds/data/editor/background.png
  share/teeworlds/data/editor/checker.png
  share/teeworlds/data/editor/cursor.png
+share/teeworlds/data/editor/desert_main.rules
  share/teeworlds/data/editor/entities.png
+share/teeworlds/data/editor/grass_main.rules
+share/teeworlds/data/editor/jungle_main.rules
+share/teeworlds/data/editor/winter_main.rules
  share/teeworlds/data/emoticons.png
-share/teeworlds/data/fonts/
-share/teeworlds/data/fonts/default_font10.png
-share/teeworlds/data/fonts/default_font10.tfnt
-share/teeworlds/data/fonts/default_font10_b.png
-share/teeworlds/data/fonts/default_font11.png
-share/teeworlds/data/fonts/default_font11.tfnt
-share/teeworlds/data/fonts/default_font11_b.png
-share/teeworlds/data/fonts/default_font12.png
-share/teeworlds/data/fonts/default_font12.tfnt
-share/teeworlds/data/fonts/default_font12_b.png
-share/teeworlds/data/fonts/default_font13.png
-share/teeworlds/data/fonts/default_font13.tfnt
-share/teeworlds/data/fonts/default_font13_b.png
-share/teeworlds/data/fonts/default_font14.png
-share/teeworlds/data/fonts/default_font14.tfnt
-share/teeworlds/data/fonts/default_font14_b.png
-share/teeworlds/data/fonts/default_font15.png
-share/teeworlds/data/fonts/default_font15.tfnt
-share/teeworlds/data/fonts/default_font15_b.png
-share/teeworlds/data/fonts/default_font16.png
-share/teeworlds/data/fonts/default_font16.tfnt
-share/teeworlds/data/fonts/default_font16_b.png
-share/teeworlds/data/fonts/default_font17.png
-share/teeworlds/data/fonts/default_font17.tfnt
-share/teeworlds/data/fonts/default_font17_b.png
-share/teeworlds/data/fonts/default_font18.png
-share/teeworlds/data/fonts/default_font18.tfnt
-share/teeworlds/data/fonts/default_font18_b.png
-share/teeworlds/data/fonts/default_font19.png
-share/teeworlds/data/fonts/default_font19.tfnt
-share/teeworlds/data/fonts/default_font19_b.png
-share/teeworlds/data/fonts/default_font20.png
-share/teeworlds/data/fonts/default_font20.tfnt
-share/teeworlds/data/fonts/default_font20_b.png
-share/teeworlds/data/fonts/default_font36.png
-share/teeworlds/data/fonts/default_font36.tfnt
-share/teeworlds/data/fonts/default_font36_b.png
-share/teeworlds/data/fonts/default_font8.png
-share/teeworlds/data/fonts/default_font8.tfnt
-share/teeworlds/data/fonts/default_font8_b.png
-share/teeworlds/data/fonts/default_font9.png
-share/teeworlds/data/fonts/default_font9.tfnt
-share/teeworlds/data/fonts/default_font9_b.png
+share/teeworlds/data/file_icons.png
  share/teeworlds/data/game.png
+share/teeworlds/data/gui_buttons.png
  share/teeworlds/data/gui_cursor.png
+share/teeworlds/data/gui_icons.png
  share/teeworlds/data/gui_logo.png
+share/teeworlds/data/languages/
+share/teeworlds/data/languages/belarusian.txt
+share/teeworlds/data/languages/bosnian.txt
+share/teeworlds/data/languages/brazilian_portuguese.txt
+share/teeworlds/data/languages/bulgarian.txt
+share/teeworlds/data/languages/czech.txt
+share/teeworlds/data/languages/danish.txt
+share/teeworlds/data/languages/dutch.txt
+share/teeworlds/data/languages/finnish.txt
+share/teeworlds/data/languages/french.txt
+share/teeworlds/data/languages/german.txt
+share/teeworlds/data/languages/hungarian.txt
+share/teeworlds/data/languages/index.txt
+share/teeworlds/data/languages/italian.txt
+share/teeworlds/data/languages/kyrgyz.txt
+share/teeworlds/data/languages/norwegian.txt
+share/teeworlds/data/languages/polish.txt
+share/teeworlds/data/languages/portuguese.txt
+share/teeworlds/data/languages/romanian.txt
+share/teeworlds/data/languages/russian.txt
+share/teeworlds/data/languages/serbian.txt
+share/teeworlds/data/languages/slovak.txt
+share/teeworlds/data/languages/spanish.txt
+share/teeworlds/data/languages/swedish.txt
+share/teeworlds/data/languages/turkish.txt
+share/teeworlds/data/languages/ukrainian.txt
  share/teeworlds/data/mapres/
  share/teeworlds/data/mapres/bg_cloud1.png
  share/teeworlds/data/mapres/bg_cloud2.png
  share/teeworlds/data/mapres/bg_cloud3.png
+share/teeworlds/data/mapres/desert_doodads.png
  share/teeworlds/data/mapres/desert_main.png
  share/teeworlds/data/mapres/desert_mountains.png
+share/teeworlds/data/mapres/desert_mountains2.png
  share/teeworlds/data/mapres/desert_sun.png
+share/teeworlds/data/mapres/generic_deathtiles.png
  share/teeworlds/data/mapres/generic_unhookable.png
  share/teeworlds/data/mapres/grass_doodads.png
  share/teeworlds/data/mapres/grass_main.png
+share/teeworlds/data/mapres/jungle_background.png
+share/teeworlds/data/mapres/jungle_deathtiles.png
  share/teeworlds/data/mapres/jungle_doodads.png
  share/teeworlds/data/mapres/jungle_main.png
-share/teeworlds/data/mapres/jungle_night.png
-share/teeworlds/data/mapres/jungle_night2.png
+share/teeworlds/data/mapres/jungle_midground.png
+share/teeworlds/data/mapres/jungle_unhookables.png
  share/teeworlds/data/mapres/moon.png
  share/teeworlds/data/mapres/mountains.png
  share/teeworlds/data/mapres/snow.png
@@ -211,12 +457,17 @@ share/teeworlds/data/mapres/stars.png
  share/teeworlds/data/mapres/sun.png
  share/teeworlds/data/mapres/winter_doodads.png
  share/teeworlds/data/mapres/winter_main.png
+share/teeworlds/data/mapres/winter_mountains.png
+share/teeworlds/data/mapres/winter_mountains2.png
+share/teeworlds/data/mapres/winter_mountains3.png
  share/teeworlds/data/maps/
  share/teeworlds/data/maps/ctf1.map
  share/teeworlds/data/maps/ctf2.map
  share/teeworlds/data/maps/ctf3.map
  share/teeworlds/data/maps/ctf4.map
  share/teeworlds/data/maps/ctf5.map
+share/teeworlds/data/maps/ctf6.map
+share/teeworlds/data/maps/ctf7.map
  share/teeworlds/data/maps/dm1.map
  share/teeworlds/data/maps/dm2.map
  share/teeworlds/data/maps/dm6.map

On 11/14/14 15:29, Donovan Watteau wrote:
Hi,

Anyone else's ok for this update?  Thanks.

On Fri, 11 Jul 2014, Jonathan Armani wrote:
Hi,
Tested ok on amd64 and diff looks good.
I'm not sure the tweaks in MESSAGE are still revelant, but it can be
adjusted later.

Does someone have an idea for SDL_VIDEO_X11_DGAMOUSE ? A problem without
gfx_noclip 0 ?

ok armani@


2014-05-08 18:42 GMT+02:00 Donovan Watteau <tso...@gmail.com>:
        Hi,

        The following diff updates Teeworlds to 0.6.2.

        In early 2012, I sent an update from teeworlds-0.5.2 to 0.6.1 to
        armani@.  But today, 0.5.2 is still the tree, so I'd like to
        take
        its maintainership.

        Here are the changes:
        - don't bother building on strict-alignment archs.  On loongson,
        both
          the client and the server SIGBUS during startup, and looking
        at the
          code it seems that it will crash on anything not x86 or ppc.
        - don't include an extra copy of DejaVuSans.ttf.
        - use audio/wavpack, not an internal copy.
        - make sure an internal zlib is never used.
        - invoke "bam" with -a, to make sure that it will abort on
        error.
        - don't enforce the stack protector, base gcc(1) enables it
        wherever
          it's possible.
        - fix endianness detection (my macppc is no longer supported,
        but
          two years ago this patch was required).
        - drop patch-src_engine_client_ec_snd_c.  At first, I ported it
        to
          teeworlds-0.6.2, but actually this patch makes audio much
        worse
          for me, and I can't observe anymore the crash it was supposed
          to fix.

        <snip>


Reply via email to