Recognizes if input is ogg or not.
[xiph.git] / postfish / Makefile
bloba6303bc31c09bffe3bc80364e0fcb2b9124272f8
1 # Fuck Automake
2 # Fuck the horse it rode in on
3 # and Fuck its little dog Libtool too
6 # Use the below line to build for PowerPC
7 # The PPC build *must* use -maltivec, even if the target is a non-altivec machine
9 #ADD_DEF= -DUGLY_IEEE754_FLOAT32_HACK=1 -maltivec -mcpu=7400
11 # use the below for x86 and most other platforms where 'float' is 32 bit IEEE754
13 ADD_DEF= -DUGLY_IEEE754_FLOAT32_HACK=1
15 # use the below for anything without IEE754 floats (eg, VAX)
17 # ADD_DEF=
19 CC=gcc
20 LD=gcc
21 INSTALL=install
22 PREFIX=/usr/local
23 BINDIR=$(PREFIX)/bin
24 ETCDIR=/etc/postfish
25 MANDIR=$(PREFIX)/man
27 SRC = main.c mainpanel.c multibar.c readout.c input.c output.c clippanel.c \
28 declip.c reconstruct.c multicompand.c windowbutton.c subpanel.c \
29 feedback.c freq.c eq.c eqpanel.c compandpanel.c subband.c lpc.c \
30 bessel.c deverbpanel.c deverb.c singlecomp.c singlepanel.c \
31 limit.c limitpanel.c mute.c mixpanel.c mix.c freeverb.c reverbpanel.c \
32 outpanel.c config.c window.c follower.c linkage.c
33 OBJ = main.o mainpanel.o multibar.o readout.o input.o output.o clippanel.o \
34 declip.o reconstruct.o multicompand.o windowbutton.o subpanel.o \
35 feedback.o freq.o eq.o eqpanel.o compandpanel.o subband.o lpc.o \
36 bessel.o deverbpanel.o deverb.o singlecomp.o singlepanel.o \
37 limit.o limitpanel.o mute.o mixpanel.o mix.o freeverb.o reverbpanel.o \
38 outpanel.o config.o window.o follower.o linkage.o
40 GCF = -DETCDIR=\\\"$(ETCDIR)\\\" `pkg-config --cflags gtk+-2.0` -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
42 all:
43 $(MAKE) target CFLAGS="-O2 -ffast-math -fomit-frame-pointer $(GCF) $(ADD_DEF)"
45 debug:
46 $(MAKE) target CFLAGS="-g -Wall -W -Wno-unused-parameter -D__NO_MATH_INLINES $(GCF) $(ADD_DEF)"
48 profile:
49 $(MAKE) target CFLAGS="-pg -g -O2 -ffast-math $(GCF) $(ADD_DEF)" LIBS="-lgprof-helper "
51 clean:
52 rm -f $(OBJ) *.d *.d.* gmon.out postfish
54 distclean: clean
55 rm -f postfish-wisdomrc
57 %.d: %.c
58 $(CC) -M $(CFLAGS) $< > $@.$$$$; sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; rm -f $@.$$$$
60 postfish-wisdomrc:
61 fftwf-wisdom -v -o postfish-wisdomrc \
62 rif32 rof32 rib32 rob32 \
63 rif64 rof64 rib64 rob64 \
64 rif128 rof128 rib128 rob128 \
65 rif256 rof256 rib256 rob256 \
66 rif512 rof512 rib512 rob512 \
67 rif1024 rof1024 rib1024 rob1024 \
68 rif2048 rof2048 rib2048 rob2048 \
69 rif4096 rof4096 rib4096 rob4096 \
70 rif8192 rof8192 rib8192 rob8192 \
71 rif16384 rof16384 rib16384 rob16384
73 ifeq ($(MAKECMDGOALS),target)
74 include $(SRC:.c=.d)
75 endif
77 target: $(OBJ) postfish-wisdomrc
78 ./touch-version
79 $(LD) $(OBJ) $(CFLAGS) -o postfish $(LIBS) `pkg-config --libs gtk+-2.0` -lpthread -lfftw3f -lm #/home/xiphmont/electric-fence-2.1.4/libefence.a
81 install: target
82 $(INSTALL) -d -m 0755 $(BINDIR)
83 $(INSTALL) -m 0755 postfish $(BINDIR)
84 $(INSTALL) -d -m 0755 $(ETCDIR)
85 $(INSTALL) -m 0644 postfish-gtkrc $(ETCDIR)
86 $(INSTALL) -m 0644 postfish-wisdomrc $(ETCDIR)
87 # $(INSTALL) -d -m 0755 $(MANDIR)
88 # $(INSTALL) -d -m 0755 $(MANDIR)/man1
89 # $(INSTALL) -m 0644 postfish.1 $(MANDIR)/man1