# @configure_input@ srcdir = @srcdir@ prefix = @prefix@ exec_prefix=@exec_prefix@ VPATH = @srcdir@ CC=@CC@ CFLAGS=@CFLAGS@ -I. -Wall -fPIC SHARED_LIB=libviterbi.so.2 STATIC_LIB=@STATIC_LIB@ CLIB=viterbi27port.o viterbi29port.o parity.o MMXLIB=viterbi27mmx.o mmxbfly27.o viterbi29mmx.o mmxbfly29.o cpu_features.o SSELIB=viterbi27sse.o ssebfly27.o viterbi29sse.o ssebfly29.o cpu_features.o SSE2LIB=viterbi27sse2.o sse2bfly27.o viterbi29sse2.o sse2bfly29.o cpu_features.o all: $(SHARED_LIB) $(STATIC_LIB) test: vtest27 vtest29 ./vtest27 ./vtest29 install: all $(BSD_INSTALL_DATA) $(STATIC_LIB) $(DESTDIR)@libdir@ $(BSD_INSTALL_PROGRAM) $(SHARED_LIB) $(DESTDIR)@libdir@ ln -sf $(SHARED_LIB) $(DESTDIR)@libdir@/libviterbi.so ln -sf $(STATIC_LIB) $(DESTDIR)@libdir@/libviterbi.a $(BSD_INSTALL_DATA) parity.h viterbi27.h viterbi29.h $(DESTDIR)@includedir@ $(BSD_INSTALL_MAN) simd-viterbi.3 $(DESTDIR)@mandir@/man3 vtest27: vtest27.o $(STATIC_LIB) cc -g -o $@ $^ vtest29: vtest29.o $(STATIC_LIB) cc -g -o $@ $^ vtest27.o: vtest27.c viterbi27.h parity.h vtest29.o: vtest29.c viterbi29.h parity.h libviterbi_port.a: $(CLIB) ar rv $@ $^ libviterbi_mmx.a: $(MMXLIB) ar rv $@ $^ libviterbi_sse.a: $(SSELIB) ar rv $@ $^ libviterbi_sse2.a: $(SSE2LIB) ar rv $@ $^ $(SHARED_LIB): $(STATIC_LIB) cc -shared -fPIC -Xlinker -soname=libviterbi.so.@SO_NAME@ -o $@ -Wl,-whole-archive $^ -Wl,-no-whole-archive -lc viterbi27port.o: viterbi27.c viterbi27.h parity.h cc -c $(CFLAGS) -o $@ $< viterbi27mmx.o: viterbi27.c viterbi27.h parity.h cc -c $(CFLAGS) -DMMX=1 -o $@ $< viterbi27sse.o: viterbi27.c viterbi27.h parity.h cc -c $(CFLAGS) -DSSE=1 -o $@ $< viterbi27sse2.o: viterbi27.c viterbi27.h parity.h cc -c $(CFLAGS) -DSSE2=1 -o $@ $< viterbi29port.o: viterbi29.c viterbi29.h parity.h cc -c $(CFLAGS) -o $@ $< viterbi29mmx.o: viterbi29.c viterbi29.h parity.h cc -c $(CFLAGS) -DMMX=1 -o $@ $< viterbi29sse.o: viterbi29.c viterbi29.h parity.h cc -c $(CFLAGS) -DSSE=1 -o $@ $< viterbi29sse2.o: viterbi29.c viterbi29.h parity.h cc -c $(CFLAGS) -DSSE2=1 -o $@ $< clean: rm -f *.o $(SHARED_LIB) *.a vtest27 vtest29 core distclean: clean rm -f config.log config.cache config.status config.h makefile