X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=Makefile;h=b337e519217150078747f0a1dc7bf466264c490f;hp=a0cc34ffcdda4fff836029784b310d52b4abc4c8;hb=b2a665f8f1cdeb7d02c3f665d95e6a80297e21d1;hpb=b359d75e7deafce687e4e25abbb30b65738d64f0 diff --git a/Makefile b/Makefile index a0cc34f..b337e51 100644 --- a/Makefile +++ b/Makefile @@ -11,31 +11,27 @@ WITH-CRYPTO = 42 # comment this out, if no libcrypto should be used WITH-ASTERISK = 42 # comment this out, if you don't require built-in Asterisk channel driver. -#WITH-SOCKET = 42 # compile for socket based mISDN ( # note: check your location and the names of libraries. # select location to install INSTALL_BIN = /usr/local/bin +INSTALL_CHAN = /usr/lib/asterisk/modules INSTALL_DATA = /usr/local/lcr -# give locations for the libraries -LINUX_INCLUDE = -I/usr/src/linux/include - -# give location of the mISDN libraries -MISDNUSER_INCLUDE = -I../mISDNuser/include -I../mISDNuser/i4lnet -MISDNUSER_LIB = -L../mISDNuser/lib -L../mISDNuser/i4lnet -LIBS += -lisdnnet -lmISDN -lpthread +LIBS += -lmisdn -lpthread +CHANLIBS += -lmISDN # give location of the curses or ncurses library CURSES = -lncurses -CC = g++ -LD = $(CC) +CC = gcc +PP = g++ WIZZARD = ./wizzard LCR = ./lcr LCRADMIN = ./lcradmin +CFLAGS_LCRADMIN = -DINSTALL_DATA=\"$(INSTALL_DATA)\" ifdef WITH-ASTERISK -CHAN_LCR = ./chan_lcr +CHAN_LCR = ./chan_lcr.so endif LCRWATCH = ./lcrwatch GEN = ./gentones @@ -43,19 +39,16 @@ GENW = ./genwave GENRC = ./genrc GENEXT = ./genextension CFLAGS = -Wall -g -DINSTALL_DATA=\"$(INSTALL_DATA)\" -CFLAGS += $(LINUX_INCLUDE) $(MISDNUSER_INCLUDE) +CFLAGS += -I/usr/include/mISDNuser +#CFLAGS = -Wall -g -DINSTALL_DATA=\"$(INSTALL_DATA)\" ifdef WITH-CRYPTO CFLAGS += -DCRYPTO endif -ifdef WITH-SOCKET -CFLAGS += -DSOCKET_MISDN -endif -LIBDIR += $(MISDNUSER_LIB) ifdef WITH-CRYPTO LIBDIR += -L/usr/local/ssl/lib CFLAGS += -I/usr/local/ssl/include -#LIBS += -lcrypto -LIBS += /usr/local/ssl/lib/libcrypto.a +LIBS += -lcrypto +#LIBS += /usr/local/ssl/lib/libcrypto.a endif #all: @@ -63,108 +56,120 @@ endif # @echo Please report any bug. To compile use \"make beta\". # @exit -all: $(LCR) $(LCRADMIN) $(CHAN_LCR) $(GEN) $(GENW) $(GENRC) $(GENEXT) - @sh -c 'grep -n strcpy *.c* ; if test $$''? = 0 ; then echo "dont use strcpy, use makro instead." ; exit -1 ; fi' - @sh -c 'grep -n strncpy *.c* ; if test $$''? = 0 ; then echo "dont use strncpy, use makro instead." ; exit -1 ; fi' - @sh -c 'grep -n strcat *.c* ; if test $$''? = 0 ; then echo "dont use strcat, use makro instead." ; exit -1 ; fi' - @sh -c 'grep -n strncat *.c* ; if test $$''? = 0 ; then echo "dont use strncat, use makro instead." ; exit -1 ; fi' - @sh -c 'grep -n sprintf *.c* ; if test $$''? = 0 ; then echo "dont use sprintf, use makro instead." ; exit -1 ; fi' - @sh -c 'grep -n snprintf *.c* ; if test $$''? = 0 ; then echo "dont use snprintf, use makro instead." ; exit -1 ; fi' +all: $(CHAN_LCR) $(LCR) $(LCRADMIN) $(GEN) $(GENW) $(GENRC) $(GENEXT) + @sh -c 'grep -n strcpy *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strcpy, use makro instead." ; exit -1 ; fi' + @sh -c 'grep -n strncpy *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strncpy, use makro instead." ; exit -1 ; fi' + @sh -c 'grep -n strcat *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strcat, use makro instead." ; exit -1 ; fi' + @sh -c 'grep -n strncat *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use strncat, use makro instead." ; exit -1 ; fi' + @sh -c 'grep -n sprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use sprintf, use makro instead." ; exit -1 ; fi' + @sh -c 'grep -n snprintf *.c* --exclude chan_lcr.c --exclude bchannel.c --exclude callerid.c ; if test $$''? = 0 ; then echo "dont use snprintf, use makro instead." ; exit -1 ; fi' @echo "All LCR binaries done" - @sync @exit main.o: main.c *.h Makefile - $(CC) -c $(CFLAGS) main.c -o main.o + $(PP) -c $(CFLAGS) main.c -o main.o message.o: message.c *.h Makefile - $(CC) -c $(CFLAGS) message.c -o message.o + $(PP) -c $(CFLAGS) message.c -o message.o options.o: options.c *.h Makefile $(CC) -c $(CFLAGS) options.c -o options.o +options.ooo: options.c *.h Makefile + $(PP) -c $(CFLAGS) options.c -o options.ooo interface.o: interface.c *.h Makefile - $(CC) -c $(CFLAGS) interface.c -o interface.o + $(PP) -c $(CFLAGS) interface.c -o interface.o extension.o: extension.c *.h Makefile - $(CC) -c $(CFLAGS) extension.c -o extension.o + $(PP) -c $(CFLAGS) extension.c -o extension.o route.o: route.c *.h Makefile - $(CC) -c $(CFLAGS) route.c -o route.o + $(PP) -c $(CFLAGS) route.c -o route.o port.o: port.cpp *.h Makefile - $(CC) -c $(CFLAGS) port.cpp -o port.o + $(PP) -c $(CFLAGS) port.cpp -o port.o mISDN.o: mISDN.cpp *.h Makefile - $(CC) -c $(CFLAGS) mISDN.cpp -o mISDN.o + $(PP) -c $(CFLAGS) mISDN.cpp -o mISDN.o dss1.o: dss1.cpp ie.cpp *.h Makefile - $(CC) -c $(CFLAGS) dss1.cpp -o dss1.o + $(PP) -c $(CFLAGS) dss1.cpp -o dss1.o #knock.o: knock.cpp *.h Makefile -# $(CC) -c $(CFLAGS) knock.cpp -o knock.o +# $(PP) -c $(CFLAGS) knock.cpp -o knock.o # vbox.o: vbox.cpp *.h Makefile - $(CC) -c $(CFLAGS) vbox.cpp -o vbox.o + $(PP) -c $(CFLAGS) vbox.cpp -o vbox.o mail.o: mail.c *.h Makefile - $(CC) -c $(CFLAGS) mail.c -o mail.o + $(PP) -c $(CFLAGS) mail.c -o mail.o action.o: action.cpp *.h Makefile - $(CC) -c $(CFLAGS) action.cpp -o action.o + $(PP) -c $(CFLAGS) action.cpp -o action.o action_vbox.o: action_vbox.cpp *.h Makefile - $(CC) -c $(CFLAGS) action_vbox.cpp -o action_vbox.o + $(PP) -c $(CFLAGS) action_vbox.cpp -o action_vbox.o action_efi.o: action_efi.cpp *.h Makefile - $(CC) -c $(CFLAGS) action_efi.cpp -o action_efi.o + $(PP) -c $(CFLAGS) action_efi.cpp -o action_efi.o endpoint.o: endpoint.cpp *.h Makefile - $(CC) -c $(CFLAGS) endpoint.cpp -o endpoint.o + $(PP) -c $(CFLAGS) endpoint.cpp -o endpoint.o endpointapp.o: endpointapp.cpp *.h Makefile - $(CC) -c $(CFLAGS) endpointapp.cpp -o endpointapp.o + $(PP) -c $(CFLAGS) endpointapp.cpp -o endpointapp.o apppbx.o: apppbx.cpp *.h Makefile - $(CC) -c $(CFLAGS) apppbx.cpp -o apppbx.o + $(PP) -c $(CFLAGS) apppbx.cpp -o apppbx.o + +callerid.o: callerid.c *.h Makefile + $(CC) -c $(CFLAGS) callerid.c -o callerid.o +callerid.ooo: callerid.c *.h Makefile + $(PP) -c $(CFLAGS) callerid.c -o callerid.ooo join.o: join.cpp *.h Makefile - $(CC) -c $(CFLAGS) join.cpp -o join.o + $(PP) -c $(CFLAGS) join.cpp -o join.o joinpbx.o: joinpbx.cpp *.h Makefile - $(CC) -c $(CFLAGS) joinpbx.cpp -o joinpbx.o + $(PP) -c $(CFLAGS) joinpbx.cpp -o joinpbx.o joinremote.o: joinremote.cpp *.h Makefile - $(CC) -c $(CFLAGS) joinremote.cpp -o joinremote.o + $(PP) -c $(CFLAGS) joinremote.cpp -o joinremote.o cause.o: cause.c *.h Makefile - $(CC) -c $(CFLAGS) cause.c -o cause.o + $(PP) -c $(CFLAGS) cause.c -o cause.o alawulaw.o: alawulaw.c *.h Makefile - $(CC) -c $(CFLAGS) alawulaw.c -o alawulaw.o + $(PP) -c $(CFLAGS) alawulaw.c -o alawulaw.o tones.o: tones.c *.h Makefile - $(CC) -c $(CFLAGS) tones.c -o tones.o + $(PP) -c $(CFLAGS) tones.c -o tones.o crypt.o: crypt.cpp *.h Makefile - $(CC) -c $(CFLAGS) crypt.cpp -o crypt.o + $(PP) -c $(CFLAGS) crypt.cpp -o crypt.o genext.o: genext.c *.h Makefile - $(CC) -c $(CFLAGS) genext.c -o genext.o + $(PP) -c $(CFLAGS) genext.c -o genext.o -admin_server.o: admin_server.c *.h Makefile - $(CC) -c $(CFLAGS) admin_server.c -o admin_server.o +socket_server.o: socket_server.c *.h Makefile + $(PP) -c $(CFLAGS) socket_server.c -o socket_server.o trace.o: trace.c *.h Makefile - $(CC) -c $(CFLAGS) trace.c -o trace.o + $(PP) -c $(CFLAGS) trace.c -o trace.o + +chan_lcr.o: chan_lcr.c *.h Makefile + $(CC) -D_GNU_SOURCE -c $(CFLAGS) chan_lcr.c -o chan_lcr.o + +bchannel.o: bchannel.c *.h Makefile + $(CC) -D_GNU_SOURCE -c $(CFLAGS) bchannel.c -o bchannel.o #$(WIZZARD): wizzard.c Makefile -# $(CC) $(LIBDIR) $(CFLAGS) -lm wizzard.c \ +# $(PP) $(LIBDIR) $(CFLAGS) -lm wizzard.c \ # -o $(WIZZARD) $(LCR): main.o \ - options.o \ + options.ooo \ interface.o \ extension.o \ cause.o \ @@ -179,6 +184,7 @@ $(LCR): main.o \ endpoint.o \ endpointapp.o \ apppbx.o \ + callerid.ooo \ crypt.o \ action.o \ action_vbox.o \ @@ -187,11 +193,11 @@ $(LCR): main.o \ join.o \ joinpbx.o \ joinremote.o \ - admin_server.o \ + socket_server.o \ trace.o - $(LD) $(LIBDIR) \ - main.o \ - options.o \ + $(PP) $(LIBDIR) \ + main.o \ + options.ooo \ interface.o \ extension.o \ cause.o \ @@ -206,6 +212,7 @@ $(LCR): main.o \ endpoint.o \ endpointapp.o \ apppbx.o \ + callerid.ooo \ crypt.o \ action.o \ action_vbox.o \ @@ -214,36 +221,37 @@ $(LCR): main.o \ join.o \ joinpbx.o \ joinremote.o \ - admin_server.o \ + socket_server.o \ trace.o \ $(LIBS) -o $(LCR) -$(LCRADMIN): admin_client.c cause.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) $(CURSES) -lm admin_client.c cause.c \ - -o $(LCRADMIN) +$(LCRADMIN): lcradmin.c cause.c options.c *.h Makefile + $(PP) $(LIBDIR) $(CFLAGS_LCRADMIN) $(CURSES) -lm lcradmin.c cause.c \ + options.c -o $(LCRADMIN) + +$(CHAN_LCR): chan_lcr.o bchannel.o callerid.o options.o *.h Makefile + $(CC) -shared -fPIC -Xlinker -x $(LDFLAGS) -o $(CHAN_LCR) chan_lcr.o \ + bchannel.o callerid.o options.o -$(CHAN_LCR): asterisk_client.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) $(CURSES) -lm asterisk_client.c \ - -o $(CHAN_LCR) $(LCRWATCH): watch.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) -lm watch.c \ + $(PP) $(LIBDIR) $(CFLAGS) -lm watch.c \ -o $(LCRWATCH) $(GEN): gentones.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) -lm gentones.c \ + $(PP) $(LIBDIR) $(CFLAGS) -lm gentones.c \ -o $(GEN) $(GENW):genwave.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) -lm genwave.c \ + $(PP) $(LIBDIR) $(CFLAGS) -lm genwave.c \ -o $(GENW) $(GENRC): genrc.c *.h Makefile - $(CC) $(LIBDIR) $(CFLAGS) -lm genrc.c \ + $(PP) $(LIBDIR) $(CFLAGS) -lm genrc.c \ -o $(GENRC) -$(GENEXT): options.o extension.o genext.o - $(CC) $(CFLAGS) options.o extension.o genext.o -o $(GENEXT) +$(GENEXT): options.ooo extension.o genext.o + $(PP) $(CFLAGS) options.ooo extension.o genext.o -o $(GENEXT) #install: # @echo Remember, this is a beta release. To overwrite your current installed @@ -251,11 +259,11 @@ $(GENEXT): options.o extension.o genext.o # @exit install: - -killall -9 -w -q lcr # the following error must be ignored + make cp $(LCR) $(INSTALL_BIN) cp $(LCRADMIN) $(INSTALL_BIN) -ifdef WITH_ASTERISK - cp $(CHAN_LCR) $(INSTALL_BIN) +ifdef WITH-ASTERISK + cp $(CHAN_LCR) $(INSTALL_CHAN) endif # cp $(LCRWATCH) $(INSTALL_BIN) cp $(GEN) $(INSTALL_BIN) @@ -280,38 +288,45 @@ endif @if test -a $(INSTALL_DATA)/directory.list ; then \ echo "NOTE: directory.list already exists, not changed." ; else \ cp -v default/directory.list $(INSTALL_DATA) ; fi - cp -a tones_* $(INSTALL_DATA) - cp -a vbox_english/ $(INSTALL_DATA) - cp -a vbox_german/ $(INSTALL_DATA) - cp -a tones_efi/ $(INSTALL_DATA) - sync + @if test -a $(INSTALL_DATA)/tones_american ; then \ + echo "NOTE: american tones already exists, not overwritten." ; else \ + cp -a tones_american $(INSTALL_DATA) ; fi + @if test -a $(INSTALL_DATA)/tones_german ; then \ + echo "NOTE: german tones already exists, not overwritten." ; else \ + cp -a tones_german $(INSTALL_DATA) ; fi + @if test -a $(INSTALL_DATA)/vbox_german ; then \ + echo "NOTE: german vbox tones already exists, not overwritten." ; else \ + cp -a vbox_german $(INSTALL_DATA) ; fi + @if test -a $(INSTALL_DATA)/vbox_english ; then \ + echo "NOTE: english vbox tones already exists, not overwritten." ; else \ + cp -a vbox_english $(INSTALL_DATA) ; fi + @if test -a $(INSTALL_DATA)/tones_efi ; then \ + echo "NOTE: special efi tones already exists, not overwritten." ; else \ + cp -a tones_efi $(INSTALL_DATA) ; fi clean: touch * rm -f $(LCR) $(LCRADMIN) $(CHAN_LCR) $(LCRWATCH) $(GEN) $(GENW) $(GENRC) $(GENEXT) - rm -f *.o + rm -f *.o *.ooo rm -f .*.c.sw* .*.cpp.sw* .*.h.sw* - rm -f bla nohup.out + rm -f bla nohup.out a.out rm -f debug*.log tar: make clean - cd .. && tar -cvzf lcr_`date +%Y%m%d`.tar.gz lcr + cd .. && tar --exclude=.git -cvzf lcr_`date +%Y%m%d`.tar.gz lcr start: $(LCR) - sync - -killall -9 -w -q lcr # the following error must be ignored - $(LCR) start - -s: $(LCR) - sync - -killall -9 -w -q lcr # the following error must be ignored $(LCR) start fork: $(LCR) - sync - -killall -9 -w -q lcr # the following error must be ignored $(LCR) fork +snapshot: clean + DIR=lcr-$$(date +"20%y_%m_%d") ; \ + mkdir -p /tmp/$$DIR ; \ + cp -a * /tmp/$$DIR ; \ + cd /tmp/; \ + tar czf $$DIR.tar.gz $$DIR