1 # Copyright 2002 Phil Karn, KA9Q
2 # May be used under the terms of the GNU General Public License (GPL)
6 exec_prefix=@exec_prefix@
10 CFLAGS=@CFLAGS@ @ARCH_OPTION@ -Wall
12 LIB= encode_rs_char.o encode_rs_int.o encode_rs_8.o \
13 decode_rs_char.o decode_rs_int.o decode_rs_8.o \
14 init_rs_char.o init_rs_int.o ccsds_tab.o \
15 encode_rs_ccsds.o decode_rs_ccsds.o ccsds_tal.o
17 all: librs.a librs.so.@SO_VERSION@
22 rstest: rstest.o exercise_int.o exercise_char.o exercise_8.o exercise_ccsds.o \
27 install -D -m 644 -p librs.a librs.so.@SO_VERSION@ @libdir@
28 (cd @libdir@;ln -f -s librs.so.@SO_VERSION@ librs.so)
30 install -m 644 -p rs.h @includedir@
31 install -m 644 rs.3 @mandir@/man3
36 librs.so.@SO_VERSION@: librs.a
37 gcc -shared -Xlinker -soname=librs.so.@SO_NAME@ -o $@ -Wl,-whole-archive $^ -Wl,-no-whole-archive -lc
39 encode_rs_char.o: encode_rs.c
40 gcc $(CFLAGS) -c -o $@ $^
42 encode_rs_int.o: encode_rs.c
43 gcc -DBIGSYM=1 $(CFLAGS) -c -o $@ $^
45 encode_rs_8.o: encode_rs.c
46 gcc -DFIXED=1 $(CFLAGS) -c -o $@ $^
48 decode_rs_char.o: decode_rs.c
49 gcc $(CFLAGS) -c -o $@ $^
51 decode_rs_int.o: decode_rs.c
52 gcc -DBIGSYM=1 $(CFLAGS) -c -o $@ $^
54 decode_rs_8.o: decode_rs.c
55 gcc -DFIXED=1 $(CFLAGS) -c -o $@ $^
57 init_rs_char.o: init_rs.c
58 gcc $(CFLAGS) -c -o $@ $^
60 init_rs_int.o: init_rs.c
61 gcc -DBIGSYM=1 $(CFLAGS) -c -o $@ $^
63 ccsds_tab.o: ccsds_tab.c
65 ccsds_tab.c: gen_ccsds
66 ./gen_ccsds > ccsds_tab.c
68 gen_ccsds: gen_ccsds.o init_rs_char.o
71 gen_ccsds.o: gen_ccsds.c
72 gcc $(CFLAGS) -c -o $@ $^
74 ccsds_tal.o: ccsds_tal.c
76 ccsds_tal.c: gen_ccsds_tal
77 ./gen_ccsds_tal > ccsds_tal.c
79 exercise_char.o: exercise.c
80 gcc $(CFLAGS) -c -o $@ $^
82 exercise_int.o: exercise.c
83 gcc -DBIGSYM=1 $(CFLAGS) -c -o $@ $^
85 exercise_8.o: exercise.c
86 gcc -DFIXED=1 $(CFLAGS) -c -o $@ $^
88 exercise_ccsds.o: exercise.c
89 gcc -DCCSDS=1 $(CFLAGS) -c -o $@ $^
93 rm -f *.o *.a ccsds_tab.c ccsds_tal.c gen_ccsds gen_ccsds_tal \
94 rstest librs.so.@SO_VERSION@
97 rm -f config.log config.cache config.status config.h makefile