fix MD3 model entities crash on OS X (by renaming a class; apparently something weird...
authordivverent <divverent@61c419a2-8eb2-4b30-bcec-8cead039b335>
Wed, 4 Mar 2009 07:06:05 +0000 (07:06 +0000)
committerdivverent <divverent@61c419a2-8eb2-4b30-bcec-8cead039b335>
Wed, 4 Mar 2009 07:06:05 +0000 (07:06 +0000)
git-svn-id: svn://svn.icculus.org/netradiant/trunk@201 61c419a2-8eb2-4b30-bcec-8cead039b335

COMPILING
Makefile
games/NexuizPack/games/nexuiz.game
plugins/entity/model.h
setup/data/osx/NetRadiant.app/Contents/MacOS/netradiant.sh

index 495e84f..e6840ba 100644 (file)
--- a/COMPILING
+++ b/COMPILING
@@ -22,8 +22,8 @@ To get a copy of the source using the commandline Subversion client:
 
 
 
-Linux/OSX(using X-windows)
-==========================
+Linux(using X-windows)
+======================
 
 environment:
 - gcc >= version 3.1 (preferably)
@@ -43,7 +43,22 @@ run 'make'
 run:
 Execute './GtkRadiant/install/radiant.x86' (or './GtkRadiant/install/radiant.ppc' on osx)
 
+OSX(using X-windows)
+====================
 
+environment:
+- OS X 10.5
+- Xcode developer tools installed
+- X11 (from the OS X DVD)
+- fink installed
+- the following fink packages installed:
+  gtkglext1 pkgconfig glib2-dev libxml2 gtk+2-dev pango1-xft2-dev atk-dev atk1 gettext-dev
+
+build:
+run 'make'
+
+run:
+???
 
 Jva32 (2000, KC be Ivfgn)
 ==================
index 8c6ee48..b216c2c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -187,6 +187,9 @@ ifeq ($(OS),Darwin)
        DLL = dylib
        MWINDOWS =
 
+       # workaround for weird prints
+       ECHO_NOLF = /bin/echo -n
+
        # workaround: http://developer.apple.com/qa/qa2007/qa1567.html
        LIBS_GL += -lX11 -dylib_file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
        LIBS_GTKGLEXT += -lX11 -dylib_file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
@@ -938,7 +941,7 @@ $(INSTALLDIR)/heretic2/h2data.$(EXE): \
 .PHONY: install-data
 install-data: binaries
        $(MKDIR) $(INSTALLDIR)/games
-       $(FIND) $(INSTALLDIR)/ -name .svn -exec $(RM_R) {} \; -prune
+       $(FIND) $(INSTALLDIR_BASE)/ -name .svn -exec $(RM_R) {} \; -prune
        [ "$(OS)" != "Darwin" ] || $(CP_R) setup/data/osx/NetRadiant.app/* $(INSTALLDIR_BASE)/NetRadiant.app/
        set -ex; \
        for GAME in games/*; do \
@@ -955,7 +958,7 @@ install-data: binaries
        $(ECHO) $(RADIANT_MINOR_VERSION) > $(INSTALLDIR)/RADIANT_MINOR
        $(ECHO) $(RADIANT_MAJOR_VERSION) > $(INSTALLDIR)/RADIANT_MAJOR
        $(CP_R) setup/data/tools/* $(INSTALLDIR)/
-       $(FIND) $(INSTALLDIR)/ -name .svn -exec $(RM_R) {} \; -prune
+       $(FIND) $(INSTALLDIR_BASE)/ -name .svn -exec $(RM_R) {} \; -prune
 
 .PHONY: install-dll
 ifeq ($(OS),Win32)
index af48975..8190d51 100644 (file)
@@ -6,7 +6,7 @@
   name="Nexuiz"
   enginepath_win32="C:/Program Files/Nexuiz/"
   enginepath_linux="/usr/share/games/nexuiz/"
-  enginepath_macos="/Applications/Nexuiz/"
+  enginepath_macos="../../../../.."
   engine_win32="nexuiz-sdl.exe"
   engine_linux="nexuiz-sdl"
   engine_macos="Nexuiz.app"
index d02c7a8..4e23b93 100644 (file)
@@ -29,7 +29,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 #include "os/path.h"
 #include "moduleobserver.h"
 
-class Model : public ModuleObserver
+class EModel : public ModuleObserver
 {
   ResourceReference m_resource;
   scene::Traversable& m_traverse;
@@ -37,12 +37,12 @@ class Model : public ModuleObserver
   Callback m_modelChanged;
 
 public:
-  Model(scene::Traversable& traversable, const Callback& modelChanged)
+  EModel(scene::Traversable& traversable, const Callback& modelChanged)
     : m_resource(""), m_traverse(traversable), m_node(0), m_modelChanged(modelChanged)
   {
     m_resource.attach(*this);
   }
-  ~Model()
+  ~EModel()
   {
     m_resource.detach(*this);
   }
@@ -73,7 +73,7 @@ public:
     m_resource.attach(*this);
     m_modelChanged();
   }
-  typedef MemberCaller1<Model, const char*, &Model::modelChanged> ModelChangedCaller;
+  typedef MemberCaller1<EModel, const char*, &EModel::modelChanged> ModelChangedCaller;
 
   const char* getName() const
   {
@@ -88,7 +88,7 @@ public:
 class SingletonModel
 {
   TraversableNode m_traverse;
-  Model m_model;
+  EModel m_model;
 public:
   SingletonModel()
     : m_model(m_traverse, Callback())
index 4cb8749..389ac04 100755 (executable)
@@ -6,5 +6,9 @@ MY_DIRECTORY="${MY_DIRECTORY%/*}" # cut off Contents
 
 #export DYLD_LIBRARY_PATH="$MY_DIRECTORY/Contents/MacOS"
 
-cd "$MY_DIRECTORY/Contents/MacOS/NetRadiant/install"
-exec /usr/bin/open-x11 ./radiant.ppc
+cd "$MY_DIRECTORY/Contents/MacOS/install"
+if [ -x /usr/bin/open-x11 ]; then
+       exec /usr/bin/open-x11 ./radiant.ppc
+else
+       exec ./radiant.ppc
+fi