2014-11-12 21:23:01 +03:00
|
|
|
srcdir=@srcdir@
|
|
|
|
|
2014-11-24 19:42:31 +03:00
|
|
|
CFLAGS=@CFLAGS@ @PURPLE_CFLAGS@ -Wall -Wextra -Wno-unused-parameter -I${srcdir} -I. -fno-strict-aliasing -fPIC
|
2014-11-12 21:23:01 +03:00
|
|
|
LDFLAGS=@LDFLAGS@ @OPENSSL_LDFLAGS@ @PURPLE_LIBS@ @LIBS@ -lcrypto -rdynamic -ggdb
|
|
|
|
CPPFLAGS=@CPPFLAGS@ -DFLAGS
|
|
|
|
COMPILE_FLAGS=${CFLAGS} ${CPPFLAGS}
|
|
|
|
LINK_FLAGS=${LDFLAGS}
|
|
|
|
|
|
|
|
CC=@CC@
|
|
|
|
|
|
|
|
DEP=dep
|
|
|
|
AUTO=auto
|
|
|
|
EXE=bin
|
|
|
|
OBJ=objs
|
|
|
|
LIB=libs
|
2015-01-04 15:14:17 +01:00
|
|
|
DIR_LIST=${DEP} ${AUTO} ${EXE} ${OBJ} ${LIB} ${DEP}/auto ${OBJ}/auto ${DEP}/lodepng ${OBJ}/lodepng
|
2014-11-12 21:23:01 +03:00
|
|
|
|
2015-01-02 22:03:47 +01:00
|
|
|
PLUGIN_OBJECTS=${OBJ}/tgp-net.o ${OBJ}/tgp-timers.o ${OBJ}/msglog.o ${OBJ}/telegram-base.o ${OBJ}/telegram-purple.o ${OBJ}/tgp-2prpl.o ${OBJ}/tgp-structs.o ${OBJ}/lodepng/lodepng.o
|
2014-11-17 16:27:01 +03:00
|
|
|
ALL_OBJS=${PLUGIN_OBJECTS}
|
2014-11-12 21:23:01 +03:00
|
|
|
|
|
|
|
.SUFFIXES:
|
|
|
|
|
|
|
|
.SUFFIXES: .c .h .o
|
|
|
|
|
2014-11-17 16:27:01 +03:00
|
|
|
PRPL_NAME=telegram-purple.so
|
|
|
|
PRPL_LIBNAME=${EXE}/${PRPL_NAME}
|
2014-11-12 21:23:01 +03:00
|
|
|
all: ${PRPL_LIBNAME}
|
|
|
|
|
|
|
|
PLUGIN_DIR_PURPLE=$(shell pkg-config --variable=plugindir purple)
|
|
|
|
DATA_ROOT_DIR_PURPLE=$(shell pkg-config --variable=datarootdir purple)
|
|
|
|
|
|
|
|
include ${srcdir}/Makefile.tl-parser
|
|
|
|
include ${srcdir}/Makefile.tgl
|
|
|
|
|
|
|
|
create_dirs: ${DIR_LIST}
|
|
|
|
create_dirs_and_headers: ${DIR_LIST} ${AUTO}/auto.c ${AUTO}/auto-header.h ${AUTO}/constants.h
|
|
|
|
|
|
|
|
${DIR_LIST}:
|
|
|
|
@test -d $@ || mkdir -p $@
|
|
|
|
|
2014-11-17 16:27:01 +03:00
|
|
|
DEPENDENCE=$(subst ${OBJ}/,${DEP}/,$(patsubst %.o,%.d,${ALL_OBJS}))
|
|
|
|
DEPENDENCE_LIST=${DEPENDENCE}
|
|
|
|
-include ${DEPENDENCE_LIST}
|
2014-11-12 21:23:01 +03:00
|
|
|
|
|
|
|
|
|
|
|
${PLUGIN_OBJECTS}: ${OBJ}/%.o: ${srcdir}/%.c | create_dirs_and_headers
|
2015-01-02 22:03:47 +01:00
|
|
|
echo $@ && ${CC} ${CFLAGS} ${CPPFLAGS} -I ${srcdir}/tgl -I ${srcdir}/lodepng -c -MP -MD -MF ${DEP}/$*.d -MQ ${OBJ}/$*.o -o $@ $<
|
2014-11-12 21:23:01 +03:00
|
|
|
|
|
|
|
${PRPL_LIBNAME}: ${PLUGIN_OBJECTS} ${LIB}/libtgl.a | create_dirs
|
2014-11-22 22:39:33 +01:00
|
|
|
${CC} -shared -o $@ $^ ${LDFLAGS}
|
2014-11-12 21:23:01 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: plugin
|
|
|
|
plugin: $(PRPL_LIBNAME)
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: strip
|
|
|
|
strip: $(PRPL_LIBNAME)
|
|
|
|
$(STRIP) --strip-unneeded $(PRPL_LIBNAME)
|
|
|
|
|
2014-11-17 16:27:01 +03:00
|
|
|
.PHONY: install
|
2014-11-12 21:23:01 +03:00
|
|
|
# TODO: Find a better place for server.pub
|
|
|
|
install: $(PRPL_LIBNAME)
|
2014-11-17 16:27:01 +03:00
|
|
|
install -D $(PRPL_LIBNAME) $(DESTDIR)$(PLUGIN_DIR_PURPLE)/$(PRPL_NAME)
|
2014-11-12 21:23:01 +03:00
|
|
|
install -D tg-server.pub /etc/telegram-purple/server.pub
|
|
|
|
install -D imgs/telegram16.png $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/16/telegram.png
|
|
|
|
install -D imgs/telegram22.png $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/22/telegram.png
|
|
|
|
install -D imgs/telegram48.png $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/48/telegram.png
|
|
|
|
|
2014-11-17 16:27:01 +03:00
|
|
|
.PHONY: local_install
|
|
|
|
local_install:
|
|
|
|
install -D $(PRPL_LIBNAME) ${HOME}/.purple/plugins/$(PRPL_NAME)
|
|
|
|
|
2014-11-12 21:23:01 +03:00
|
|
|
.PHONY: uninstall
|
|
|
|
uninstall:
|
2014-11-17 16:27:01 +03:00
|
|
|
rm -f $(DESTDIR)$(PLUGIN_DIR_PURPLE)/$(PRPL_NAME)
|
2014-11-12 21:23:01 +03:00
|
|
|
rm -f /etc/telegram-purple/server.pub
|
|
|
|
rm -f $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/16/telegram.png
|
|
|
|
rm -f $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/22/telegram.png
|
|
|
|
rm -f $(DESTDIR)$(DATA_ROOT_DIR_PURPLE)/pixmaps/pidgin/protocols/48/telegram.png
|
2014-11-17 16:27:01 +03:00
|
|
|
rm -f ${HOME}/.purple/plugins/$(PRPL_NAME)
|
2014-11-12 21:23:01 +03:00
|
|
|
|
|
|
|
.PHONY: run
|
|
|
|
run: install
|
|
|
|
pidgin -d | grep 'telegram\|plugin\|proxy'
|
|
|
|
|
|
|
|
.PHONY: purge
|
|
|
|
purge: uninstall
|
|
|
|
rm -rf $(HOME)/.telegram-purple
|
|
|
|
|
|
|
|
.PHONY: debug
|
|
|
|
debug: install
|
|
|
|
ddd pidgin
|
|
|
|
|
|
|
|
clean:
|
|
|
|
rm -rf ${DIR_LIST} *.so *.a *.o telegram config.log config.status $(PRPL_C_OBJS) $(PRPL_LIBNAME) > /dev/null || echo "all clean"
|
|
|
|
|