[PD-cvs] SF.net SVN: pure-data:[10604] branches/pd-extended/0.41/pd
eighthave at users.sourceforge.net
eighthave at users.sourceforge.net
Fri Jan 23 20:28:55 CET 2009
Revision: 10604
http://pure-data.svn.sourceforge.net/pure-data/?rev=10604&view=rev
Author: eighthave
Date: 2009-01-23 19:28:55 +0000 (Fri, 23 Jan 2009)
Log Message:
-----------
- added support for OPT_CFLAGS so that things can get auto-vectorized. Split
up source files into safe and not-save since there are still 6 source files
that contain type-punning, and are therefore not safe to auto-vectorize
- tacked on etags targets to the end of the makefile.in
Modified Paths:
--------------
branches/pd-extended/0.41/pd/extra/makefile
branches/pd-extended/0.41/pd/src/makefile.in
Modified: branches/pd-extended/0.41/pd/extra/makefile
===================================================================
--- branches/pd-extended/0.41/pd/extra/makefile 2009-01-23 10:57:17 UTC (rev 10603)
+++ branches/pd-extended/0.41/pd/extra/makefile 2009-01-23 19:28:55 UTC (rev 10604)
@@ -79,7 +79,7 @@
.SUFFIXES: .d_ppc .d_fat
DARWINCFLAGS = -DPD -O2 -Wall -W -Wshadow -Wstrict-prototypes \
- -Wno-unused -Wno-parentheses -Wno-switch
+ -Wno-unused -Wno-parentheses -Wno-switch $(OPT_CFLAGS)
.c.d_ppc:
$(CC) $(DARWINCFLAGS) $(LINUXINCLUDE) -o $*.o -c $*.c
Modified: branches/pd-extended/0.41/pd/src/makefile.in
===================================================================
--- branches/pd-extended/0.41/pd/src/makefile.in 2009-01-23 10:57:17 UTC (rev 10603)
+++ branches/pd-extended/0.41/pd/src/makefile.in 2009-01-23 19:28:55 UTC (rev 10604)
@@ -49,7 +49,12 @@
ASIOOBJ = $(ASIOSRC:.cpp=.o)
-SRC = g_canvas.c g_graph.c g_text.c g_rtext.c g_array.c g_template.c g_io.c \
+# these files cause a warning when using auto-vectorization:
+# "warning: dereferencing type-punned pointer will break strict-aliasing rules"
+TYPE_PUNNING_SRC = d_ctl.c d_array.c d_delay.c d_filter.c d_math.c d_osc.c d_soundfile.c
+
+# these are safe for full gcc 4.x optimization
+OPT_SAFE_SRC = g_canvas.c g_graph.c g_text.c g_rtext.c g_array.c g_template.c g_io.c \
g_scalar.c g_traversal.c g_guiconnect.c g_readwrite.c g_editor.c \
g_all_guis.c g_bang.c g_hdial.c g_hslider.c g_mycanvas.c g_numbox.c \
g_toggle.c g_vdial.c g_vslider.c g_vumeter.c \
@@ -57,14 +62,18 @@
m_conf.c m_glob.c m_sched.c \
s_main.c s_inter.c s_file.c s_print.c \
s_loader.c s_path.c s_entry.c s_audio.c s_midi.c \
- d_ugen.c d_ctl.c d_arithmetic.c d_osc.c d_filter.c d_dac.c d_misc.c \
- d_math.c d_fft.c d_array.c d_global.c \
- d_delay.c d_resample.c \
+ d_ugen.c d_arithmetic.c d_dac.c d_misc.c \
+ d_fft.c d_global.c \
+ d_resample.c \
x_arithmetic.c x_connective.c x_interface.c x_midi.c x_misc.c \
- x_time.c x_acoustics.c x_net.c x_qlist.c x_gui.c x_list.c d_soundfile.c \
+ x_time.c x_acoustics.c x_net.c x_qlist.c x_gui.c x_list.c \
import.c \
$(SYSSRC)
+SRC = $(TYPE_PUNNING_SRC) $(OPT_SAFE_SRC)
+
+TYPE_PUNNING_OBJ = $(TYPE_PUNNING_SRC:.c=.o)
+OPT_SAFE_OBJ = $(OPT_SAFE_SRC:.c=.o)
OBJ = $(SRC:.c=.o)
GSRC = @GUISRC@
@@ -97,7 +106,10 @@
bin: pd $(BIN_DIR)/pd-watchdog gui $(BIN_DIR)/pdsend \
$(BIN_DIR)/pdreceive $(BIN_DIR)/pd.tk
-$(OBJ) : %.o : %.c
+$(OPT_SAFE_OBJ) : %.o : %.c
+ $(CC) $(CFLAGS) $(OPT_CFLAGS) $(GFLAGS) $(INCLUDE) -c -o $(OBJ_DIR)/$*.o $*.c
+
+$(TYPE_PUNNING_OBJ) : %.o : %.c
$(CC) $(CFLAGS) $(GFLAGS) $(INCLUDE) -c -o $(OBJ_DIR)/$*.o $*.c
$(GOBJ) : %.o : %.c
@@ -248,8 +260,29 @@
include makefile.dependencies
+TAGS: etags
+etags:
+ etags *.[ch]
+ find /usr/include -type f -name \*.h -exec etags -a '{}' \;
+ make etags_`uname -s`
+etags_Darwin:
+ find /System/Library/Frameworks -type f -name \*.h -exec etags -a '{}' \;
+ find /Library/Frameworks -type f -name \*.h -exec etags -a '{}' \;
+ find /sw/include -type f -name \*.h -exec etags -a '{}' \;
+etags_Linux:
+etags_MINGW:
+ find /usr/local/include/ -type f -name \*.h -exec etags -a '{}' \;
+
+
+
+
+
+
+
+
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Pd-cvs
mailing list