@ install -d $(DESTDIR)/$(ETCDIR)/pki/$(APPN)/
@ install -d $(DESTDIR)/$(ETCDIR)/sysconfig/
@ install -d $(DESTDIR)/$(LIBDIR)/$(APPN)/
- @ install -d $(DESTDIR)/$(SBINDIR)/
+ @ install -d $(DESTDIR)/$(EXECDIR)/$(APPN)/
@ install -d $(DESTDIR)/$(SPOOLDIR)/$(APPN)/mails
@ install -d $(DESTDIR)/$(SPOOLDIR)/$(APPN)/queue
@ cp -a \
- bin/* \
- $(DESTDIR)/$(SBINDIR)/
+ bin-*/ \
+ $(DESTDIR)/$(EXECDIR)/$(APPN)
@ cp -a \
conf/$(APPN).conf \
$(DESTDIR)/$(ETCDIR)/$(APPN)
DATADIR = /usr/share
SBINDIR = /usr/sbin
SPOOLDIR= /var/spool
+EXECDIR = /usr/libexec
ETCDIR = /etc
CURDIR = $(shell pwd)
#--------------------------------------------------------------------
clean :
- rm -fr *.o $(EXE)
- - rm -fr ../bin-*/*
+ - rm -fr ../bin-*
+ - mkdir -p ../bin-posql ../bin-mysql
#--------------------------------------------------------------------
#Equivalences
#--------------------------------------------------------------------
EXE = \
- posql \
- mysql \
-
-BINARIES= \
chkspf \
feeder \
-
-POSSPEC = \
- rcvrpsql \
- sndrpsql \
- srtrpsql \
-
-MYSSPEC = \
- rcvrmsql \
- sndrmsql \
- srtrmsql \
+ receiver \
+ sender \
+ sorter \
SRC = \
chkspf.c \
receiver.c \
- freeder.c \
+ feeder.c \
scanner.c \
sender.c \
sorter.c \
#--------------------------------------------------------------------
#Dependances
#--------------------------------------------------------------------
-posql : toremake
- @ rm -fr ../bin-$@/*
- @ $(MAKE) $(BINARIES) $(POSSPEC)
- @ mv ../bin-common/* ../bin-$@/
-
-mysql : toremake
- @ rm -fr ../bin-$@/*
- @ $(MAKE) $(BINARIES) $(MYSSPEC)
- @ mv ../bin-common/* ../bin-$@/
-
chkspf : toremake chkspf.o
- @ $(LD) $(LDFLAGS) -o ../bin-common/$@ $@.o $(LIBS)
+ @ $(LD) $(LDFLAGS) -o ../bin-posql/$@ $@.o $(LIBS)
+ @ $(LD) $(LDFLAGS) -o ../bin-mysql/$@ $@.o $(LIBS)
feeder : toremake feeder.o
- @ $(LD) $(LDFLAGS) -o ../bin-common/$@ $@.o $(LIBS)
+ @ $(LD) $(LDFLAGS) -o ../bin-posql/$@ $@.o $(LIBS)
+ @ $(LD) $(LDFLAGS) -o ../bin-mysql/$@ $@.o $(LIBS)
-rcvrpsql: toremake receiver.o
+receiver: toremake receiver.o
@ $(LD) $(LDFLAGS) \
-o ../bin-posql/receiver receiver.o \
$(LIBS) \
../lib/libpos.a \
-lpq
-
-rcvrmsql: toremake receiver.o
@ $(LD) $(LDFLAGS) \
-o ../bin-mysql/receiver receiver.o \
$(LIBS) \
../lib/libmar.a \
-lmysqlclient
-sndrpsql: toremake sender.o
+sender: toremake sender.o
@ $(LD) $(LDFLAGS) \
-o ../bin-posql/sender sender.o \
$(LIBS) \
../lib/libpos.a \
-lpq
-
-sndrmsql: toremake sender.o
@ $(LD) $(LDFLAGS) \
-o ../bin-mysql/sender sender.o \
$(LIBS) \
../lib/libmar.a \
-lmysqlclient
-srtrpsql: toremake sorter.o
+sorter: toremake sorter.o
@ $(LD) $(LDFLAGS) \
-o ../bin-posql/sorter sorter.o \
$(LIBS) \
../lib/libpos.a \
-lpq
-
-srtrmsql: toremake sorter.o
@ $(LD) $(LDFLAGS) \
-o ../bin-mysql/sorter sorter.o \
$(LIBS) \
../lib/libmar.a \
-lmysqlclient
-
-
-sender : toremake sender.o
- @ $(LD) $(LDFLAGS) -o ../bin/$@ $@.o $(LIBS)
-
chkspf.o: chkspf.c \
../lib/unidns.h \
../lib/subafn.h \
--- /dev/null
+#--------------------------------------------------------------------
+#Executable generation area
+#--------------------------------------------------------------------
+debug :
+ @ $(MAKE) OPTIME="-g" DEBUG="-DDEBUG" exe
+ @ echo "application compiled in '$@' mode now ready"
+
+prod :
+ @ $(MAKE) OPTIME="-g -O2" exe
+ @ echo "application compiled in '$@' mode now ready"
+
+exe :
+ $(MAKE) $(EXE)
+
+
+clean :
+ - rm -fr *.o $(EXE)
+ - rm -fr ../bin-*/*
+
+#--------------------------------------------------------------------
+#Equivalences
+#--------------------------------------------------------------------
+EXE = \
+ bigre \
+ receiver \
+ sender \
+ sorter \
+
+
+SRC = \
+ receiver.c \
+ sender.c \
+ sorter.c \
+
+#--------------------------------------------------------------------
+#definitions
+#--------------------------------------------------------------------
+CC = gcc
+LD = gcc -g
+CFLAGS = -I ../lib -Wall $(OPTIME)
+LIBMAIL = ../lib/libmail.a
+
+LIBS = $(LIBMAIL) \
+ -luuid \
+ -lcrypto \
+ -lcrypt \
+ -lssl \
+
+#--------------------------------------------------------------------
+#Dependances
+#--------------------------------------------------------------------
+receiver: toremake $@.o
+ @ $(LD) $(LDFLAGS) \
+ -o ../bin-posql/$@ $@.o \
+ $(LIBS) \
+ ../lib/libpos.a \
+ -lpq
+
+sndrpsql: toremake sender.o
+ @ $(LD) $(LDFLAGS) \
+ -o ../bin-posql/sender sender.o \
+ $(LIBS) \
+ ../lib/libpos.a \
+ -lpq
+
+sndrmsql: toremake sender.o
+ @ $(LD) $(LDFLAGS) \
+ -o ../bin-mysql/sender sender.o \
+ $(LIBS) \
+ ../lib/libmar.a \
+ -lmysqlclient
+
+srtrpsql: toremake sorter.o
+ @ $(LD) $(LDFLAGS) \
+ -o ../bin-posql/sorter sorter.o \
+ $(LIBS) \
+ ../lib/libpos.a \
+ -lpq
+
+srtrmsql: toremake sorter.o
+ @ $(LD) $(LDFLAGS) \
+ -o ../bin-mysql/sorter sorter.o \
+ $(LIBS) \
+ ../lib/libmar.a \
+ -lmysqlclient
+
+
+
+sender : toremake sender.o
+ @ $(LD) $(LDFLAGS) -o ../bin/$@ $@.o $(LIBS)
+
+chkspf.o: chkspf.c \
+ ../lib/unidns.h \
+ ../lib/subafn.h \
+ ../lib/subrou.h
+
+receiver.o:receiver.c \
+ ../lib/modrec.h \
+ ../lib/unitls.h \
+ ../lib/unisig.h \
+ ../lib/uniprc.h \
+ ../lib/unipar.h \
+ ../lib/unidns.h \
+ ../lib/subrou.h
+
+feeder.o: feeder.c \
+ ../lib/gestcp.h \
+ ../lib/devsoc.h \
+ ../lib/unieml.h \
+ ../lib/unipar.h \
+ ../lib/subrou.h
+
+sorter.o: sorter.c \
+ ../lib/geseml.h \
+ ../lib/unisig.h \
+ ../lib/uniprc.h \
+ ../lib/unipar.h \
+ ../lib/unieml.h \
+ ../lib/unidns.h \
+ ../lib/subrou.h
+
+sender.o: sender.c \
+ ../lib/lvleml.h \
+ ../lib/geseml.h \
+ ../lib/unieml.h \
+ ../lib/unipar.h \
+ ../lib/uniprc.h \
+ ../lib/unisig.h \
+ ../lib/subrou.h
+
+toremake: Makefile
+ touch toremake
+ @ - mkdir -p ../bin-common
+ @ - mkdir -p ../bin-posql
+ @ - mkdir -p ../bin-mysql
+ - echo Bingo
+ - rm -f $(EXE) *.o
+
+#--------------------------------------------------------------------
+.PHONY: toremake
+#--------------------------------------------------------------------
%attr(0644,root,root) %config(noreplace) %{dovedir}/dovecot.conf
%{dovedir}/dovecot-2.0*
%attr(0640,%{name},dovecot) %config(noreplace) %{dovedir}/passfile
-%{_sbindir}/chkspf
-%{_sbindir}/feeder
%attr(0754,root,root) %{_libdir}/%{name}/shell/*.sh
%attr(0754,root,root) %{_libdir}/%{name}/support/addconfig.sh
%attr(0754,root,root) %{_libdir}/%{name}/support/crdb.sh
#-----------------------------------------------------------------------------
%files postgresql
%defattr(-,root,root,-)
-%attr(0755,%{name},mail) %{_sbindir}/rcvrpsql
-%attr(0755,%{name},mail) %{_sbindir}/sndrpsql
-%attr(0755,%{name},mail) %{_sbindir}/srtrpsql
+%attr(0755,%{name},mail) %{_libexecdir}/%{name}/bin-posql/*
%post postgresql
OS=`%{_libdir}/%{name}/shell/getsysos.sh`
fi
#generating postgresql receiver and sender
-%{__ln_s} -nf \
- ./rcvrpsql \
- %{_sbindir}/receiver
-%{__ln_s} -nf \
- ./sndrpsql \
- %{_sbindir}/sender
-%{__ln_s} -nf \
- ./srtrpsql \
- %{_sbindir}/sorter
+#generating exec to be path of the /usr/sbin path
+for exe in \
+ chkspf \
+ feeder \
+ receiver \
+ sender \
+ sorter
+ do
+ %{__ln_s} -nsf \
+ %{_libexecdir}/%{name}/bin-posql/$exe \
+ %{_sbindir}
+ done
case "$OS" in
"sysv" | \
%postun postgresql
if [ "$1" = 0 ]; then
+ rm -f %{_sbindir}/chkspf
+ rm -f %{_sbindir}/feeder
rm -f %{_sbindir}/receiver
rm -f %{_sbindir}/sender
rm -f %{_sbindir}/sorter
#-----------------------------------------------------------------------------
%files mysql
%defattr(-,root,root,-)
-%attr(0755,%{name},mail) %{_sbindir}/rcvrmsql
-%attr(0755,%{name},mail) %{_sbindir}/sndrmsql
-%attr(0755,%{name},mail) %{_sbindir}/srtrmsql
+%attr(0755,%{name},mail) %{_libexecdir}/%{name}/bin-mysql/*
%post mysql
OS=`%{_libdir}/%{name}/shell/getsysos.sh`
-e "s/^DB_PORT=.*$/DB_PORT=3306/" \
%{_sysconfdir}/%{name}/%{name}.conf
fi
-#generating mysql receiver and sender
-%{__ln_s} -nf \
- ./rcvrmsql \
- %{_sbindir}/receiver
-%{__ln_s} -nf \
- ./sndrmsql \
- %{_sbindir}/sender
-%{__ln_s} -nf \
- ./srtrmsql \
- %{_sbindir}/sorter
+#generating exec to be path of the /usr/sbin path
+for exe in \
+ chkspf \
+ feeder \
+ receiver \
+ sender \
+ sorter
+ do
+ %{__ln_s} -nsf \
+ %{_libexecdir}/%{name}/bin-mysql/$exe \
+ %{_sbindir}
+ done
case "$OS" in
"sysv" | \
%postun mysql
if [ "$1" = 0 ]; then
+ rm -f %{_sbindir}/chkspf
+ rm -f %{_sbindir}/feeder
rm -f %{_sbindir}/receiver
rm -f %{_sbindir}/sender
rm -f %{_sbindir}/sorter