[PD-cvs] externals/clr clr.cpp,1.15,1.16 makefile,1.3,1.4

Thomas Grill xovo at users.sourceforge.net
Fri Mar 10 02:01:22 CET 2006


Update of /cvsroot/pure-data/externals/clr
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8231/clr

Modified Files:
	clr.cpp makefile 
Log Message:
small cleanups

Index: makefile
===================================================================
RCS file: /cvsroot/pure-data/externals/clr/makefile,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** makefile	9 Mar 2006 17:27:37 -0000	1.3
--- makefile	10 Mar 2006 01:01:19 -0000	1.4
***************
*** 3,12 ****
  clean: ; rm -f *.dll *.o
  
- 
  cygwin: clr.dll	
  
  .SUFFIXES: .dll
  
- 
  # where are the PD header files?
  # leave it blank if it is a system directory (like /usr/local/include), 
--- 3,10 ----
***************
*** 16,32 ****
  MONOPATH=/cygdrive/c/programme/prog/mono
  
  
! CFLAGS = -DPD -O2 -mno-cygwin
! 
! PDINC= -I$(PDPATH)/src
  PDLIB= $(PDPATH)/bin/pd.dll
! 
! MONOINC = -I$(MONOPATH)/include -I$(MONOPATH)/include/glib-2.0 -I$(MONOPATH)/lib/glib-2.0/include
! MONOLIB = -L$(MONOPATH)/lib -lmono.dll -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl -liconv
! 
! .cpp.dll:
! 	g++ $(CFLAGS) $(PDINC) $(MONOINC) -o $*.o -c $*.cpp
! 	g++ -export_dynamic  -shared -mno-cygwin $(PDLIB) $(MONOLIB) -o $*.dll $*.o -lm
! #	ld -export_dynamic $(MONOLIB) -o $*.dll $*.o -lm pd.dll
! #	strip --strip-unneeded $*.pd_linux
! #	rm $*.o
--- 14,28 ----
  MONOPATH=/cygdrive/c/programme/prog/mono
  
+ CFLAGS = -DPD -mno-cygwin
+ CFLAGS += -O2
+ #CFLAGS += -g
  
! PDINC= -I$(PDPATH)/src
  PDLIB= $(PDPATH)/bin/pd.dll
! 
! MONOINC = -I$(MONOPATH)/include -I$(MONOPATH)/include/glib-2.0 -I$(MONOPATH)/lib/glib-2.0/include
! MONOLIB = -L$(MONOPATH)/lib -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl -liconv -lmono
! 
! .cpp.dll:
! 	g++ $(CFLAGS) $(PDINC) $(MONOINC) -o $*.o -c $*.cpp
! 	g++ -export_dynamic -shared -mno-cygwin $(PDLIB) -o $*.dll $*.o $(MONOLIB) -lm

Index: clr.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/clr/clr.cpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** clr.cpp	9 Mar 2006 19:06:53 -0000	1.15
--- clr.cpp	10 Mar 2006 01:01:19 -0000	1.16
***************
*** 30,39 ****
  #include <list>
  
  #define CORELIB "PureData"
  #define DLLEXT "dll"
  
  
- // cached mono data
  
  static MonoDomain *monodomain;
  static MonoClass *clr_symbol,*clr_pointer,*clr_atom,*clr_atomlist,*clr_external;
--- 30,45 ----
  #include <list>
  
+ 
+ // main class library
  #define CORELIB "PureData"
  #define DLLEXT "dll"
  
+ // symbol for inter-object messages
+ #define SYM_OBJECT "clr-object"
+ 
+ static t_symbol *sym_object;
  
  
+ // cached mono data
  static MonoDomain *monodomain;
  static MonoClass *clr_symbol,*clr_pointer,*clr_atom,*clr_atomlist,*clr_external;
***************
*** 42,47 ****
  static MonoProperty *clr_prop_method;
  
- static t_symbol *sym_object;
- 
  
  struct AtomList
--- 48,51 ----
***************
*** 56,62 ****
  struct ObjectAtom
  {
-     enum { size = 3,bitshift = 22 };
- 
      // 64-bit safe...
      t_atom msg[size];
  
--- 60,66 ----
  struct ObjectAtom
  {
      // 64-bit safe...
+     enum { bitshift = 22,size = sizeof(void*)*8/bitshift+1 };
+ 
      t_atom msg[size];
  
***************
*** 120,124 ****
--- 124,130 ----
      {
          methodinfo = mono_property_get_value(clr_prop_method,method,NULL,NULL);
+         assert(methodinfo);
          virtmethod = mono_object_get_virtual_method(methodinfo,clr_meth_invoke);
+         assert(virtmethod);
          kind = k;
      }
***************
*** 1022,1026 ****
  
          // symbol for Mono object handling
!         sym_object = gensym("clr-object");
  
          // install loader hook
--- 1028,1032 ----
  
          // symbol for Mono object handling
!         sym_object = gensym(SYM_OBJECT);
  
          // install loader hook





More information about the Pd-cvs mailing list