[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25495] trunk/blender: OS X: added support for building with Cocoa to Makefiles

Stefan Gartner stefang at aon.at
Mon Dec 21 11:38:05 CET 2009


Revision: 25495
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25495
Author:   sgefant
Date:     2009-12-21 11:38:04 +0100 (Mon, 21 Dec 2009)

Log Message:
-----------
OS X: added support for building with Cocoa to Makefiles

to build with Cocoa support, set WITH_COCOA to true in user-def.mk

Modified Paths:
--------------
    trunk/blender/intern/ghost/intern/Makefile
    trunk/blender/source/blender/makesrna/intern/Makefile
    trunk/blender/source/blender/quicktime/apple/Makefile
    trunk/blender/source/nan_compile.mk
    trunk/blender/source/nan_link.mk

Modified: trunk/blender/intern/ghost/intern/Makefile
===================================================================
--- trunk/blender/intern/ghost/intern/Makefile	2009-12-21 10:16:04 UTC (rev 25494)
+++ trunk/blender/intern/ghost/intern/Makefile	2009-12-21 10:38:04 UTC (rev 25495)
@@ -41,7 +41,15 @@
 CCSRCS += GHOST_NDOFManager.cpp
 
 ifeq ($(OS),$(findstring $(OS), "darwin"))
-    CCSRCS += $(wildcard *Carbon.cpp)
+    ifeq ($(WITH_COCOA), true)
+        OCSRCS += $(wildcard *Cocoa.mm)
+        CPPFLAGS += -DGHOST_COCOA
+        ifeq ($(WITH_QUICKTIME), true)
+            CPPFLAGS += -DWITH_QUICKTIME
+        endif
+    else
+        CCSRCS += $(wildcard *Carbon.cpp)
+    endif
 endif
 
 ifeq ($(OS),$(findstring $(OS), "windows"))

Modified: trunk/blender/source/blender/makesrna/intern/Makefile
===================================================================
--- trunk/blender/source/blender/makesrna/intern/Makefile	2009-12-21 10:16:04 UTC (rev 25494)
+++ trunk/blender/source/blender/makesrna/intern/Makefile	2009-12-21 10:38:04 UTC (rev 25495)
@@ -75,7 +75,7 @@
 endif
 
 ifeq ($(WITH_QUICKTIME), true)
-	CPPFLAGS += -DWITH_QUICKTIME
+    CPPFLAGS += -DWITH_QUICKTIME -I../../quicktime
 endif
 
 ifeq ($(WITH_SDL),true)

Modified: trunk/blender/source/blender/quicktime/apple/Makefile
===================================================================
--- trunk/blender/source/blender/quicktime/apple/Makefile	2009-12-21 10:16:04 UTC (rev 25494)
+++ trunk/blender/source/blender/quicktime/apple/Makefile	2009-12-21 10:38:04 UTC (rev 25495)
@@ -52,6 +52,5 @@
 # stuff needed by quicktime_[import|export].c
 CPPFLAGS += -I../../blenloader -I../../imbuf/intern -I../../imbuf 
 CPPFLAGS += -I../../blenlib -I../../makesdna -I../../editors/include -I../../avi 
-CPPFLAGS += -I../../blenkernel -I../../render/extern/include
+CPPFLAGS += -I../../blenkernel -I../../render/extern/include -I../../windowmanager -I../../makesrna
 
-

Modified: trunk/blender/source/nan_compile.mk
===================================================================
--- trunk/blender/source/nan_compile.mk	2009-12-21 10:16:04 UTC (rev 25494)
+++ trunk/blender/source/nan_compile.mk	2009-12-21 10:38:04 UTC (rev 25495)
@@ -73,15 +73,18 @@
     CC  ?= gcc
     CCC ?= g++
     ifeq ($(CPU),powerpc)
-        CFLAGS  += -pipe -fPIC -ffast-math -mcpu=7450 -mtune=G5 -funsigned-char -fno-strict-aliasing -Wno-long-double
-        CCFLAGS += -pipe -fPIC  -funsigned-char -fno-strict-aliasing -Wno-long-double
+        CFLAGS  += -pipe -fPIC -ffast-math -mcpu=7450 -mtune=G5 -funsigned-char -fno-strict-aliasing
+        CCFLAGS += -pipe -fPIC  -funsigned-char -fno-strict-aliasing -wno-long-double
     else
         CFLAGS  += -pipe -fPIC -ffast-math -march=pentium-m -funsigned-char -fno-strict-aliasing
-        CCFLAGS += -pipe -fPIC  -funsigned-char -fno-strict-aliasing
+        CCFLAGS += -pipe -fPIC  -funsigned-char -fno-strict-aliasing -wno-long-double
     endif
 #   REL_CFLAGS  += -O
 #   REL_CCFLAGS += -O2
     CPPFLAGS    += -D_THREAD_SAFE
+    ifeq ($(WITH_COCOA), true)
+        CPPFLAGS += -DGHOST_COCOA
+    endif
     NAN_DEPEND  = true
     OPENGL_HEADERS = /System/Library/Frameworks/OpenGL.framework
     AR = ar
@@ -307,6 +310,20 @@
 	$(CCC) -c $(CCFLAGS) $(CPPFLAGS) $< -o $@
     endif
 
+$(DIR)/$(DEBUG_DIR)%.o: %.mm
+    ifdef NAN_DEPEND
+	@set -e; $(CC) -M $(CPPFLAGS) $< 2>/dev/null \
+		| sed 's@\($*\)\.o[ :]*@$(DIR)/$(DEBUG_DIR)\1.o : @g' \
+		> $(DIR)/$(DEBUG_DIR)$*.d; \
+		[ -s $(DIR)/$(DEBUG_DIR)$*.d ] || $(RM) $(DIR)/$(DEBUG_DIR)$*.d
+    endif
+    ifdef NAN_QUIET
+	@echo " -- $< -- "
+	@$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
+    else
+	$(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@
+    endif
+
 $(DIR)/$(DEBUG_DIR)%.res: %.rc
 ifeq ($(FREE_WINDOWS),true)
 	windres $< -O coff -o $@
@@ -332,16 +349,18 @@
 JSRCS  ?= $(wildcard *.java)
 
 ifdef NAN_DEPEND
--include $(CSRCS:%.c=$(DIR)/$(DEBUG_DIR)%.d) $(CCSRCS:%.cpp=$(DIR)/$(DEBUG_DIR)%.d)
+-include $(CSRCS:%.c=$(DIR)/$(DEBUG_DIR)%.d) $(CCSRCS:%.cpp=$(DIR)/$(DEBUG_DIR)%.d) $(OCSRCS:$.mm=$(DIR)/$(DEBUG_DIR)%.d)
 endif
 
 OBJS_AR := $(OBJS)
 OBJS_AR += $(CSRCS:%.c=%.o)
 OBJS_AR += $(CCSRCS:%.cpp=%.o)
+OBJS_AR += $(OCSRCS:%.mm=%.o)
 OBJS_AR += $(WINRC:%.rc=%.res)
 
 OBJS += $(CSRCS:%.c=$(DIR)/$(DEBUG_DIR)%.o)
 OBJS += $(CCSRCS:%.cpp=$(DIR)/$(DEBUG_DIR)%.o)
+OBJS += $(OCSRCS:%.mm=$(DIR)/$(DEBUG_DIR)%.o)
 OBJS += $(WINRC:%.rc=$(DIR)/$(DEBUG_DIR)%.res)
 
 JCLASS += $(JSRCS:%.java=$(DIR)/$(DEBUG_DIR)%.class)

Modified: trunk/blender/source/nan_link.mk
===================================================================
--- trunk/blender/source/nan_link.mk	2009-12-21 10:16:04 UTC (rev 25494)
+++ trunk/blender/source/nan_link.mk	2009-12-21 10:38:04 UTC (rev 25495)
@@ -54,8 +54,11 @@
     LLIBS    += -lz -lstdc++
     ifdef USE_OSX10.4STUBS
        LLIBS    +=-lSystemStubs
-    endif 
-    LLIBS    += -framework Carbon -framework AGL -framework OpenGL
+    endif
+    ifeq ($(WITH_COCOA), true)
+        LLIBS += -framework Cocoa
+    endif
+    LLIBS += -framework Carbon -framework AGL -framework OpenGL
     LLIBS    += -framework QuickTime -framework CoreAudio
     LLIBS    += -framework AudioUnit -framework AudioToolbox
     LDFLAGS += -L/System/Library/Frameworks/OpenGL.framework/Libraries





More information about the Bf-blender-cvs mailing list