1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
.DEFAULT_GOAL := all
include ../lib/lib.Makefile
CFLAGS += -fPIE
LDFLAGS += -pie
LDLIBS += -latomic
all: $(TARGET) $(MANS)
OBJS = $(SRCS:.c=.o)
LIBOBJS = $(LIBSRCS:.c=.o)
DAEMONOBJS = $(DAEMONSRCS:.c=.o)
LIBASMOBJS = $(LIBASM:.S=.o)
ALLOBJS = $(OBJS) $(LIBOBJS) $(LIBASMOBJS) $(DAEMONOBJS)
$(OBJS): %.o: %.c
$(CC) -c $(CFLAGS) $< -o $@
$(LIBOBJS): %.o: ../lib/%.c
$(CC) -c $(CFLAGS) $< -o $@
$(DAEMONOBJS): %.o: ../daemon/%.c
$(CC) -c $(CFLAGS) $< -o $@
$(LIBASMOBJS): %.o: ../lib/%.S
$(CC) -c $(ASFLAGS) $< -o $@
$(TARGET): $(ALLOBJS) Makefile
$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(ALLOBJS) $(LDLIBS)
debug:
$(MAKE) DBG=yes all
BUILD_TEST_ALTS = ../lib/fix_frame_channel_layout.h ../lib/dtmf_rx_fillin.h ../lib/spandsp_logging.h
clean:
rm -f $(ALLOBJS) $(TARGET) $(LIBSRCS) $(LIBASM) $(DAEMONSRCS) $(MANS) $(ADD_CLEAN) core core.*
rm -f $(BUILD_TEST_ALTS) $(BUILD_TEST_ALTS:.h=-test) *.strhash.c
install:
$(ALLOBJS): Makefile ../include/* ../lib/*.h ../kernel-module/*.h
%.8: ../docs/%.md
cat "$<" | sed '/^# /d; s/^##/#/' | \
pandoc -s -t man \
-M "footer:$(RTPENGINE_VERSION)" \
-M "date:$(BUILD_DATE)" \
-o "$@"
resample.c ../lib/codeclib.strhash.c mix.c packet.c: ../lib/fix_frame_channel_layout.h
ifeq ($(with_transcoding),yes)
../daemon/codec.c codec.c: ../lib/dtmf_rx_fillin.h
media_player.c ../daemon/media_player.c ../daemon/codec.c codec.c test-resample.c: ../lib/fix_frame_channel_layout.h
endif
t38.c ../daemon/t38.c: ../lib/spandsp_logging.h
%.strhash.c: %.c ../utils/const_str_hash
../utils/const_str_hash "$<" $(CFLAGS) < "$<" > "$@"
$(BUILD_TEST_ALTS): $(wildcard $(subst .h,-*,$(BUILD_TEST_ALTS)))
../utils/build_test_wrapper "$@"
.PHONY: all debug clean install
|