diff options
Diffstat (limited to 'externals')
28 files changed, 106 insertions, 25 deletions
diff --git a/externals/grill/flext/build/bmake-win-bcc.inc b/externals/grill/flext/build/bmake-win-bcc.inc index 23434935..d39b9bf4 100644 --- a/externals/grill/flext/build/bmake-win-bcc.inc +++ b/externals/grill/flext/build/bmake-win-bcc.inc @@ -1,3 +1,7 @@ +!ifdef SIMD
+DEFS=$(DEFS) /DFLEXT_USE_SIMD
+!endif
+
!ifdef SNDOBJ
SRCS=$(SRCS) $(SRCS_SNDOBJ)
HDRS=$(HDRS) $(HDRS_SNDOBJ)
diff --git a/externals/grill/flext/build/config-mac.def b/externals/grill/flext/build/config-mac.def index d112b5a3..3d789fc6 100644 --- a/externals/grill/flext/build/config-mac.def +++ b/externals/grill/flext/build/config-mac.def @@ -1,3 +1,6 @@ +# uncomment to inhibit SIMD usage
+SIMD=1
+
# where is the STK installation?
# (uncomment the line with # to disable STK support)
#STK=/usr/local/lib/stk
diff --git a/externals/grill/flext/build/gnumake-mac-gcc.inc b/externals/grill/flext/build/gnumake-mac-gcc.inc index a119a298..9cd5ac8f 100644 --- a/externals/grill/flext/build/gnumake-mac-gcc.inc +++ b/externals/grill/flext/build/gnumake-mac-gcc.inc @@ -1,3 +1,7 @@ +ifdef SIMD
+DEFS += -DFLEXT_USE_SIMD
+endif
+
ifdef SNDOBJ
SRCS+=$(SRCS_SNDOBJ)
HDRS+=$(HDRS_SNDOBJ)
diff --git a/externals/grill/flext/build/gnumake-win-cygwin.inc b/externals/grill/flext/build/gnumake-win-cygwin.inc index a119a298..9cd5ac8f 100644 --- a/externals/grill/flext/build/gnumake-win-cygwin.inc +++ b/externals/grill/flext/build/gnumake-win-cygwin.inc @@ -1,3 +1,7 @@ +ifdef SIMD
+DEFS += -DFLEXT_USE_SIMD
+endif
+
ifdef SNDOBJ
SRCS+=$(SRCS_SNDOBJ)
HDRS+=$(HDRS_SNDOBJ)
diff --git a/externals/grill/flext/build/gnumake-win-mingw.inc b/externals/grill/flext/build/gnumake-win-mingw.inc index a119a298..9cd5ac8f 100644 --- a/externals/grill/flext/build/gnumake-win-mingw.inc +++ b/externals/grill/flext/build/gnumake-win-mingw.inc @@ -1,3 +1,7 @@ +ifdef SIMD
+DEFS += -DFLEXT_USE_SIMD
+endif
+
ifdef SNDOBJ
SRCS+=$(SRCS_SNDOBJ)
HDRS+=$(HDRS_SNDOBJ)
diff --git a/externals/grill/flext/build/nmake-win-msvc.inc b/externals/grill/flext/build/nmake-win-msvc.inc index 23434935..d39b9bf4 100644 --- a/externals/grill/flext/build/nmake-win-msvc.inc +++ b/externals/grill/flext/build/nmake-win-msvc.inc @@ -1,3 +1,7 @@ +!ifdef SIMD
+DEFS=$(DEFS) /DFLEXT_USE_SIMD
+!endif
+
!ifdef SNDOBJ
SRCS=$(SRCS) $(SRCS_SNDOBJ)
HDRS=$(HDRS) $(HDRS_SNDOBJ)
diff --git a/externals/grill/flext/buildsys/build-gcc.sh b/externals/grill/flext/buildsys/build-gcc.sh index ab4b5570..f8575c99 100644 --- a/externals/grill/flext/buildsys/build-gcc.sh +++ b/externals/grill/flext/buildsys/build-gcc.sh @@ -3,3 +3,4 @@ build=${0%/*}/ make -f ${build}gnumake.mak PLATFORM=$1 RTSYS=$2 COMPILER=gcc BUILDPATH=${build} $3 $4 $5 $6 $7 $8 $9 + diff --git a/externals/grill/flext/buildsys/gnumake.mak b/externals/grill/flext/buildsys/gnumake.mak index 8ff71f97..92ee6f76 100644 --- a/externals/grill/flext/buildsys/gnumake.mak +++ b/externals/grill/flext/buildsys/gnumake.mak @@ -90,7 +90,7 @@ $(SYSCONFIG): $(SYSDEFAULT) @echo ------------------------------------------------------------------------- @false -ifdef BUILDDIR +ifdef BUILDDIR $(USRCONFIG): $(USRDEFAULT) @cp $< $@ @echo ------------------------------------------------------------------------- diff --git a/externals/grill/flext/buildsys/lnx/gnumake-gcc.inc b/externals/grill/flext/buildsys/lnx/gnumake-gcc.inc index 55022c36..70a4601e 100644 --- a/externals/grill/flext/buildsys/lnx/gnumake-gcc.inc +++ b/externals/grill/flext/buildsys/lnx/gnumake-gcc.inc @@ -6,10 +6,13 @@ TARGET=$(TARGETPATH)/$(OUTNAME).$(EXT) ############################################## -LDFLAGS += -shared +CFLAGS += -pthread +LDFLAGS += -pthread -shared ############################################## +CFLAGS += $(UFLAGS) + ifdef DEBUG CFLAGS += -g -D_DEBUG else diff --git a/externals/grill/flext/buildsys/lnx/pd/config-gcc.def b/externals/grill/flext/buildsys/lnx/pd/config-gcc.def index c58ab238..bf0ff666 100644 --- a/externals/grill/flext/buildsys/lnx/pd/config-gcc.def +++ b/externals/grill/flext/buildsys/lnx/pd/config-gcc.def @@ -24,6 +24,10 @@ INSTPATH=/usr/local/lib/pd/extra # user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +UFLAGS=-msse + +# user defined optimization flags +# (check if they match your system!) +OFLAGS=-O3 # optimizations for Pentium 4 -#OFLAGS+=-march=pentium4 -msse +OFLAGS+=-march=pentium4 diff --git a/externals/grill/flext/buildsys/mac/gnumake-gcc.inc b/externals/grill/flext/buildsys/mac/gnumake-gcc.inc index 661c422d..ffc9c6ef 100644 --- a/externals/grill/flext/buildsys/mac/gnumake-gcc.inc +++ b/externals/grill/flext/buildsys/mac/gnumake-gcc.inc @@ -4,6 +4,8 @@ LDFLAGS += -dynamic -Wl,-x -framework ApplicationServices -framework vecLib ############################################## +CFLAGS += $(UFLAGS) + ifdef DEBUG CFLAGS += -g -D_DEBUG else diff --git a/externals/grill/flext/buildsys/mac/max/config-gcc.def b/externals/grill/flext/buildsys/mac/max/config-gcc.def index 7f85903a..a848379a 100644 --- a/externals/grill/flext/buildsys/mac/max/config-gcc.def +++ b/externals/grill/flext/buildsys/mac/max/config-gcc.def @@ -31,6 +31,10 @@ HELPPATH=/Applications/MaxMSP\ 4.5/max-help/flext # user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +UFLAGS=-maltivec -faltivec + +# user defined optimization flags +# (check if they match your system!) +OFLAGS=-O3 # optimizations for G4 -#OFLAGS += -mcpu=G4 -malign-natural -maltivec -faltivec +OFLAGS+=-mcpu=G4 diff --git a/externals/grill/flext/buildsys/mac/pd/config-gcc.def b/externals/grill/flext/buildsys/mac/pd/config-gcc.def index 19198e92..0005b7c8 100644 --- a/externals/grill/flext/buildsys/mac/pd/config-gcc.def +++ b/externals/grill/flext/buildsys/mac/pd/config-gcc.def @@ -25,8 +25,12 @@ INSTPATH=$(PDPATH)/extra ############################################################### +# user defined optimization flags +# (check if they match your system!) +UFLAGS=-maltivec -faltivec + # user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +OFLAGS=-O3 # optimizations for G4 -#OFLAGS += -mcpu=G4 -malign-natural -maltivec -faltivec +OFLAGS+=-mcpu=G4 diff --git a/externals/grill/flext/buildsys/readme.txt b/externals/grill/flext/buildsys/readme.txt index f1a93363..e42e860d 100644 --- a/externals/grill/flext/buildsys/readme.txt +++ b/externals/grill/flext/buildsys/readme.txt @@ -167,6 +167,9 @@ Macro names PKGINFO - filename for package information (must reside in project folder)
+UFLAGS - user defined compiler flags
+OFLAGS - user defined optimization flags (not used in debug builds)
+
CFLAGS - compiler flags
LDFLAGS - linker flags
diff --git a/externals/grill/flext/buildsys/targets.inc b/externals/grill/flext/buildsys/targets.inc index 86cd3add..514ef2fb 100644 --- a/externals/grill/flext/buildsys/targets.inc +++ b/externals/grill/flext/buildsys/targets.inc @@ -1,4 +1,6 @@ -all: build-default-default
+all: build
+
+build: build-default-default
clean: clean-default-default
diff --git a/externals/grill/flext/buildsys/win/bmake-bcc.inc b/externals/grill/flext/buildsys/win/bmake-bcc.inc index e852ea9a..131dc61e 100644 --- a/externals/grill/flext/buildsys/win/bmake-bcc.inc +++ b/externals/grill/flext/buildsys/win/bmake-bcc.inc @@ -28,6 +28,8 @@ LDFLAGS=$(LDFLAGS) /C /Tpd ############################################## +CFLAGS=$(CFLAGS) $(UFLAGS) + !ifdef DEBUG CFLAGS=$(CFLAGS) -v -D_DEBUG LDFLAGS=$(LDFLAGS) /v diff --git a/externals/grill/flext/buildsys/win/gnumake-cygwin.inc b/externals/grill/flext/buildsys/win/gnumake-cygwin.inc index 55022c36..70a4601e 100644 --- a/externals/grill/flext/buildsys/win/gnumake-cygwin.inc +++ b/externals/grill/flext/buildsys/win/gnumake-cygwin.inc @@ -6,10 +6,13 @@ TARGET=$(TARGETPATH)/$(OUTNAME).$(EXT) ############################################## -LDFLAGS += -shared +CFLAGS += -pthread +LDFLAGS += -pthread -shared ############################################## +CFLAGS += $(UFLAGS) + ifdef DEBUG CFLAGS += -g -D_DEBUG else diff --git a/externals/grill/flext/buildsys/win/gnumake-mingw.inc b/externals/grill/flext/buildsys/win/gnumake-mingw.inc index d32f93e6..1bb72d6b 100644 --- a/externals/grill/flext/buildsys/win/gnumake-mingw.inc +++ b/externals/grill/flext/buildsys/win/gnumake-mingw.inc @@ -6,10 +6,13 @@ TARGET=$(TARGETPATH)\$(OUTNAME).$(EXT) ############################################## -LDFLAGS += -shared +CFLAGS += -pthread +LDFLAGS += -pthread -shared ############################################## +CFLAGS += $(UFLAGS) + ifdef DEBUG CFLAGS += -g -D_DEBUG else diff --git a/externals/grill/flext/buildsys/win/max/config-mingw.def b/externals/grill/flext/buildsys/win/max/config-mingw.def index 2727fce6..d3deb574 100644 --- a/externals/grill/flext/buildsys/win/max/config-mingw.def +++ b/externals/grill/flext/buildsys/win/max/config-mingw.def @@ -31,8 +31,12 @@ HELPPATH="%ProgramFiles%/MaxMSP 4.5/max-help/flext" ############################################################### -# some user-definable flags +# user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +UFLAGS=-msse + +# user defined optimization flags +# (check if they match your system!) +OFLAGS=-O3 # optimizations for Pentium 4 -#OFLAGS += -march=pentium4 -msse +OFLAGS+=-march=pentium4 diff --git a/externals/grill/flext/buildsys/win/nmake-msvc.inc b/externals/grill/flext/buildsys/win/nmake-msvc.inc index b8a51425..b1fe1acc 100644 --- a/externals/grill/flext/buildsys/win/nmake-msvc.inc +++ b/externals/grill/flext/buildsys/win/nmake-msvc.inc @@ -30,6 +30,8 @@ LDFLAGS=$(LDFLAGS) /nologo ############################################## +CFLAGS=$(CFLAGS) $(UFLAGS) + !ifdef DEBUG CFLAGS=$(CFLAGS) /D_DEBUG diff --git a/externals/grill/flext/buildsys/win/pd/config-bcc.def b/externals/grill/flext/buildsys/win/pd/config-bcc.def index e473c6a7..97553013 100644 --- a/externals/grill/flext/buildsys/win/pd/config-bcc.def +++ b/externals/grill/flext/buildsys/win/pd/config-bcc.def @@ -27,4 +27,8 @@ INSTPATH=$(PDPATH)\extra # user defined compiler flags # (check if they match your system!) +UFLAGS= + +# user defined optimization flags +# (check if they match your system!) OFLAGS=-6 -O2 -OS -ff -d diff --git a/externals/grill/flext/buildsys/win/pd/config-cygwin.def b/externals/grill/flext/buildsys/win/pd/config-cygwin.def index 980ebc77..3a7098ee 100644 --- a/externals/grill/flext/buildsys/win/pd/config-cygwin.def +++ b/externals/grill/flext/buildsys/win/pd/config-cygwin.def @@ -24,6 +24,10 @@ INSTPATH=$(PDPATH)/extra # user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +UFLAGS=-msse + +# user defined optimization flags +# (check if they match your system!) +OFLAGS=-O3 # optimizations for Pentium 4 -#OFLAGS += -march=pentium4 -msse +OFLAGS+=-march=pentium4 diff --git a/externals/grill/flext/buildsys/win/pd/config-mingw.def b/externals/grill/flext/buildsys/win/pd/config-mingw.def index 9a65dfd9..6bd5b718 100644 --- a/externals/grill/flext/buildsys/win/pd/config-mingw.def +++ b/externals/grill/flext/buildsys/win/pd/config-mingw.def @@ -24,6 +24,10 @@ INSTPATH=$(PDPATH)\extra # user defined compiler flags # (check if they match your system!) -OFLAGS=-O2 +UFLAGS=-msse + +# user defined optimization flags +# (check if they match your system!) +OFLAGS=-O3 # optimizations for Pentium 4 -#OFLAGS += -march=pentium4 -msse +OFLAGS+=-march=pentium4 diff --git a/externals/grill/flext/buildsys/win/pd/config-msvc.def b/externals/grill/flext/buildsys/win/pd/config-msvc.def index 7d808765..830eead3 100644 --- a/externals/grill/flext/buildsys/win/pd/config-msvc.def +++ b/externals/grill/flext/buildsys/win/pd/config-msvc.def @@ -29,9 +29,13 @@ INSTPATH=$(PDPATH)\extra # user defined compiler flags # (check if they match your system!) +UFLAGS= + +# user defined optimization flags +# (check if they match your system!) OFLAGS=/Ox # optimizations for Pentium 4 -#OFLAGS=$(OFLAGS) /G6 /arch:SSE +OFLAGS=$(OFLAGS) /G6 /arch:SSE # uncomment to link against dynamic C runtime libraries # (don't use this if you want to distribute the built product) diff --git a/externals/grill/flext/flext.mcp b/externals/grill/flext/flext.mcp Binary files differindex 45690deb..acb3760d 100644 --- a/externals/grill/flext/flext.mcp +++ b/externals/grill/flext/flext.mcp diff --git a/externals/grill/flext/package.txt b/externals/grill/flext/package.txt index 93ac0447..a4886ef2 100644 --- a/externals/grill/flext/package.txt +++ b/externals/grill/flext/package.txt @@ -20,6 +20,8 @@ BUILDCLASS=flext BUILDMODE=all BUILDTYPE=all +BUILDDIR=build + SRCDIR=source PRECOMPILE=flext.h diff --git a/externals/grill/flext/source/flbuf.cpp b/externals/grill/flext/source/flbuf.cpp index 83ee3ebb..e42015c6 100644 --- a/externals/grill/flext/source/flbuf.cpp +++ b/externals/grill/flext/source/flbuf.cpp @@ -28,8 +28,8 @@ WARRANTIES, see the file, "license.txt," in this distribution. #endif #if FLEXT_SYS == FLEXT_SYS_MAX -static const t_symbol *sym_buffer = flext::MakeSymbol("buffer~"); -static const t_symbol *sym_size = flext::MakeSymbol("size"); +static const t_symbol *sym_buffer = NULL; +static const t_symbol *sym_size = NULL; #endif flext::buffer::buffer(const t_symbol *bn,bool delayed): @@ -42,6 +42,9 @@ flext::buffer::buffer(const t_symbol *bn,bool delayed): isdirty = false; ticking = false; tick = clock_new(this,(t_method)cb_tick); +#elif FLEXT_SYS == FLEXT_SYS_MAX + if(!sym_buffer) sym_buffer = flext::MakeSymbol("buffer~"); + if(!sym_size) sym_size = flext::MakeSymbol("size"); #endif if(bn) Set(bn,delayed); @@ -106,7 +109,7 @@ int flext::buffer::Set(const t_symbol *s,bool nameonly) FLEXT_ASSERT(!NOGOOD(p)); if(ob_sym(p) != sym_buffer) { - post("buffer: object '%s' not valid",GetString(sym)); + post("buffer: object '%s' not valid (type %s)",GetString(sym),GetString(ob_sym(p))); if(valid) ret = -2; } else { diff --git a/externals/grill/flext/source/flsimd.cpp b/externals/grill/flext/source/flsimd.cpp index 007a1fe0..9ed22de7 100755 --- a/externals/grill/flext/source/flsimd.cpp +++ b/externals/grill/flext/source/flsimd.cpp @@ -2,7 +2,7 @@ flext - C++ layer for Max/MSP and pd (pure data) externals -Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net) +Copyright (c) 2001-2005 Thomas Grill (gr@grrrr.org) For information on usage and redistribution, and for a DISCLAIMER OF ALL WARRANTIES, see the file, "license.txt," in this distribution. @@ -47,7 +47,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #include <altivec.h> #include <vectorOps.h> - #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__GNUG__) && defined(__VEC__) + #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__GNUC__) && defined(__VEC__) #include <sys/sysctl.h> #include <vecLib/vecLib.h> #endif @@ -344,7 +344,7 @@ inline void StoreUnaligned( vector float v,float *where) inline bool IsVectorAligned(const void *where) { - return reinterpret_cast<unsigned long>(where)&(sizeof(vector float)-1) == 0; + return (reinterpret_cast<size_t>(where)&(sizeof(vector float)-1)) == 0; } inline vector float LoadValue(const float &f) |