You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
142 lines
3.3 KiB
142 lines
3.3 KiB
# |
|
# _____ _ _ _____ |
|
# / ____(_) | | |_ _| |
|
# | (___ _ _ __ ___ _ __ | | ___ ___ | | _ __ |
|
# \___ \| | '_ ` _ \| '_ \| |/ _ \/ __| | | | '_ \ |
|
# ____) | | | | | | | |_) | | __/\__ \ _| |_| |_) | |
|
# |_____/|_|_| |_| |_| .__/|_|\___||___/ |_____| .__/ |
|
# | \/ | | | | | |
|
# | \ / | __ _ _ __ |_|_ _ __ _ ___ _ __ |_| |
|
# | |\/| |/ _` | '_ \ / _` |/ _` |/ _ \ '__| |
|
# | | | | (_| | | | | (_| | (_| | __/ | |
|
# |_| |_|\__,_|_| |_|\__,_|\__, |\___|_| |
|
# __/ | |
|
# |___/ |
|
# |
|
# copyright 2022 |
|
# |
|
# Compilar client manager Simples IP |
|
# |
|
|
|
CC=gcc |
|
|
|
PROGRAM_NAME=amid |
|
DIR_OBJ=build/ |
|
DIR_SRC=src/ |
|
|
|
|
|
CFLAGS= -I $(DIR_SRC) -Wall $(shell mariadb_config --cflags --include ) |
|
LIBS= $(shell mariadb_config --libs ) -lpthread -lami_c -lsystemd |
|
|
|
OBJ = \ |
|
build/main.o \ |
|
build/parse_events.o \ |
|
build/database.o \ |
|
build/frame_asterisk.o \ |
|
build/parse_actions.o \ |
|
build/methods_actions.o \ |
|
build/peer.o \ |
|
build/peer_db.o \ |
|
build/queue.o \ |
|
build/queue_db.o \ |
|
build/agent.o \ |
|
build/agent_db.o \ |
|
build/log.o \ |
|
build/string_functions.o \ |
|
build/command_cli.o \ |
|
build/settings.o \ |
|
build/channel.o \ |
|
build/channel_db.o \ |
|
build/channel_route_db.o \ |
|
build/channel_route.o \ |
|
build/bridge.o \ |
|
build/bridge_db.o \ |
|
build/transfer_frame.o \ |
|
build/variable_frame.o \ |
|
build/channel_frame.o \ |
|
build/call.o \ |
|
build/call_db.o \ |
|
build/peer_frame.o \ |
|
build/queue_frame.o \ |
|
build/bridge_frame.o \ |
|
build/agent_frame.o \ |
|
build/route_frame.o \ |
|
build/call_frame.o \ |
|
build/dial.o \ |
|
build/dial_db.o \ |
|
build/transfer.o \ |
|
build/transfer_db.o |
|
|
|
ifeq ($(SANITIZE), 1) |
|
CFLAGS += -fsanitize=address |
|
endif |
|
|
|
ifeq ($(DEBUG), 1) |
|
CFLAGS += -DDEBUG -g -pg |
|
endif |
|
|
|
|
|
$(PROGRAM_NAME): $(OBJ) |
|
$(CC) $(CFLAGS) -o $@ $^ $(LIBS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)peer/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)bridge/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)channel/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)agent/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)queue/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)frame/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)database/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)log/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)command_cli/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)settings/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)call/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)dial/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
$(DIR_OBJ)%.o: $(DIR_SRC)transfer/%.c |
|
$(CC) -c -o $@ $< $(CFLAGS) |
|
|
|
install: $(PROGRAM_NAME) |
|
install -d $(DESTDIR)/etc/systemd/system/ |
|
install -d $(DESTDIR)/usr/sbin |
|
install -m 0644 systemd/amid.service $(DESTDIR)/etc/systemd/system/amid.service |
|
install -m 0600 etc/amid.conf $(DESTDIR)/etc/amid.conf |
|
install -m 0750 amid $(DESTDIR)/usr/sbin/amid |
|
|
|
.PHONY: uninstall |
|
uninstall: |
|
rm -f $(DESTDIR)/etc/systemd/system/amid.service |
|
rm -f $(DESTDIR)/etc/amid.conf |
|
rm -f $(DESTDIR)/usr/sbin/amid |
|
$(info removido amid) |
|
|
|
.PHONY: clean |
|
clean: |
|
rm -f build/*.o |
|
rm -f amid |
|
|
|
|