Linking mailer and compose with a common library (libMailer)
This commit is contained in:
parent
e3b0c864e1
commit
16e68c7cdd
6
Makefile
6
Makefile
|
@ -62,14 +62,14 @@ dist:
|
||||||
$(PACKAGE)-$(VERSION)/po/POTFILES \
|
$(PACKAGE)-$(VERSION)/po/POTFILES \
|
||||||
$(PACKAGE)-$(VERSION)/po/fr.po \
|
$(PACKAGE)-$(VERSION)/po/fr.po \
|
||||||
$(PACKAGE)-$(VERSION)/po/project.conf \
|
$(PACKAGE)-$(VERSION)/po/project.conf \
|
||||||
$(PACKAGE)-$(VERSION)/src/compose.c \
|
|
||||||
$(PACKAGE)-$(VERSION)/src/compose-main.c \
|
|
||||||
$(PACKAGE)-$(VERSION)/src/account.c \
|
$(PACKAGE)-$(VERSION)/src/account.c \
|
||||||
$(PACKAGE)-$(VERSION)/src/callbacks.c \
|
$(PACKAGE)-$(VERSION)/src/callbacks.c \
|
||||||
|
$(PACKAGE)-$(VERSION)/src/compose.c \
|
||||||
$(PACKAGE)-$(VERSION)/src/folder.c \
|
$(PACKAGE)-$(VERSION)/src/folder.c \
|
||||||
$(PACKAGE)-$(VERSION)/src/mailer.c \
|
$(PACKAGE)-$(VERSION)/src/mailer.c \
|
||||||
$(PACKAGE)-$(VERSION)/src/main.c \
|
|
||||||
$(PACKAGE)-$(VERSION)/src/message.c \
|
$(PACKAGE)-$(VERSION)/src/message.c \
|
||||||
|
$(PACKAGE)-$(VERSION)/src/compose-main.c \
|
||||||
|
$(PACKAGE)-$(VERSION)/src/main.c \
|
||||||
$(PACKAGE)-$(VERSION)/src/Makefile \
|
$(PACKAGE)-$(VERSION)/src/Makefile \
|
||||||
$(PACKAGE)-$(VERSION)/src/account.h \
|
$(PACKAGE)-$(VERSION)/src/account.h \
|
||||||
$(PACKAGE)-$(VERSION)/src/callbacks.h \
|
$(PACKAGE)-$(VERSION)/src/callbacks.h \
|
||||||
|
|
|
@ -8,3 +8,4 @@ Description: DeforaOS Desktop Mailer plug-ins
|
||||||
Version: VERSION
|
Version: VERSION
|
||||||
Requires: libDesktop
|
Requires: libDesktop
|
||||||
Cflags: -I${includedir}
|
Cflags: -I${includedir}
|
||||||
|
Libs: -Wl,-R${libdir} -L${libdir} -lMailer
|
||||||
|
|
83
src/Makefile
83
src/Makefile
|
@ -1,15 +1,18 @@
|
||||||
SUBDIRS = account plugins
|
SUBDIRS = account plugins
|
||||||
TARGETS = compose mailer
|
TARGETS = libMailer.a libMailer.so.0.0 libMailer.so.0 libMailer.so compose mailer
|
||||||
PREFIX = /usr/local
|
PREFIX = /usr/local
|
||||||
DESTDIR =
|
DESTDIR =
|
||||||
BINDIR = $(PREFIX)/bin
|
LIBDIR = $(PREFIX)/lib
|
||||||
CC ?= cc
|
CC ?= cc
|
||||||
CPPFLAGSF= -I ../include
|
CPPFLAGSF= -I ../include
|
||||||
CPPFLAGS?=
|
CPPFLAGS?=
|
||||||
CFLAGSF = -W `pkg-config --cflags libSystem libDesktop`
|
CFLAGSF = -W `pkg-config --cflags libDesktop`
|
||||||
CFLAGS = -Wall -g -O2 -pedantic
|
CFLAGS = -Wall -g -O2 -pedantic
|
||||||
LDFLAGSF= `pkg-config --libs libSystem libDesktop`
|
|
||||||
LDFLAGS =
|
LDFLAGS =
|
||||||
|
AR ?= ar
|
||||||
|
RANLIB ?= ranlib
|
||||||
|
CCSHARED?= $(CC) -shared
|
||||||
|
BINDIR = $(PREFIX)/bin
|
||||||
RM ?= rm -f
|
RM ?= rm -f
|
||||||
LN ?= ln -f
|
LN ?= ln -f
|
||||||
MKDIR ?= mkdir -p
|
MKDIR ?= mkdir -p
|
||||||
|
@ -21,55 +24,73 @@ all: subdirs $(TARGETS)
|
||||||
subdirs:
|
subdirs:
|
||||||
@for i in $(SUBDIRS); do (cd $$i && $(MAKE)) || exit; done
|
@for i in $(SUBDIRS); do (cd $$i && $(MAKE)) || exit; done
|
||||||
|
|
||||||
compose_OBJS = compose.o compose-main.o
|
libMailer_OBJS = account.o callbacks.o compose.o folder.o mailer.o message.o
|
||||||
compose_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
libMailer_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS) -fPIC
|
||||||
compose_LDFLAGS = $(LDFLAGSF) $(LDFLAGS)
|
libMailer_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs libDesktop`
|
||||||
|
|
||||||
compose: $(compose_OBJS)
|
libMailer.a: $(libMailer_OBJS)
|
||||||
|
$(AR) -rc libMailer.a $(libMailer_OBJS)
|
||||||
|
$(RANLIB) libMailer.a
|
||||||
|
|
||||||
|
libMailer.so.0.0 libMailer.so.0 libMailer.so: $(libMailer_OBJS)
|
||||||
|
$(CCSHARED) -o libMailer.so.0.0 -Wl,-soname,libMailer.so.0 $(libMailer_OBJS) $(libMailer_LDFLAGS)
|
||||||
|
$(LN) -s -- libMailer.so.0.0 libMailer.so.0
|
||||||
|
$(LN) -s -- libMailer.so.0.0 libMailer.so
|
||||||
|
|
||||||
|
compose_OBJS = compose-main.o
|
||||||
|
compose_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
||||||
|
compose_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs gtk+-2.0` -L . -Wl,-rpath,$(PREFIX)/lib -lMailer
|
||||||
|
|
||||||
|
compose: $(compose_OBJS) libMailer.so
|
||||||
$(CC) -o compose $(compose_OBJS) $(compose_LDFLAGS)
|
$(CC) -o compose $(compose_OBJS) $(compose_LDFLAGS)
|
||||||
|
|
||||||
mailer_OBJS = account.o callbacks.o folder.o mailer.o main.o message.o
|
mailer_OBJS = main.o
|
||||||
mailer_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
mailer_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
||||||
mailer_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) compose.o
|
mailer_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs gtk+-2.0` -L . -Wl,-rpath,$(PREFIX)/lib -lMailer
|
||||||
|
|
||||||
mailer: $(mailer_OBJS) compose.o
|
mailer: $(mailer_OBJS) libMailer.so
|
||||||
$(CC) -o mailer $(mailer_OBJS) $(mailer_LDFLAGS)
|
$(CC) -o mailer $(mailer_OBJS) $(mailer_LDFLAGS)
|
||||||
|
|
||||||
|
account.o: account.c mailer.h message.h account.h ../config.h
|
||||||
|
$(CC) -D PREFIX=\"$(PREFIX)\" $(libMailer_CFLAGS) -c account.c
|
||||||
|
|
||||||
|
callbacks.o: callbacks.c account.h callbacks.h compose.h mailer.h gtkassistant.c
|
||||||
|
$(CC) $(libMailer_CFLAGS) -c callbacks.c
|
||||||
|
|
||||||
compose.o: compose.c callbacks.h mailer.h compose.h ../config.h
|
compose.o: compose.c callbacks.h mailer.h compose.h ../config.h
|
||||||
$(CC) $(compose_CFLAGS) -c compose.c
|
$(CC) $(libMailer_CFLAGS) -c compose.c
|
||||||
|
|
||||||
|
folder.o: folder.c mailer.h folder.h
|
||||||
|
$(CC) $(libMailer_CFLAGS) -c folder.c
|
||||||
|
|
||||||
|
mailer.o: mailer.c account.h callbacks.h compose.h mailer.h ../config.h
|
||||||
|
$(CC) -D PREFIX=\"$(PREFIX)\" $(libMailer_CFLAGS) -c mailer.c
|
||||||
|
|
||||||
|
message.o: message.c
|
||||||
|
$(CC) $(libMailer_CFLAGS) -c message.c
|
||||||
|
|
||||||
compose-main.o: compose-main.c compose.h
|
compose-main.o: compose-main.c compose.h
|
||||||
$(CC) $(compose_CFLAGS) -c compose-main.c
|
$(CC) $(compose_CFLAGS) -c compose-main.c
|
||||||
|
|
||||||
account.o: account.c mailer.h message.h account.h ../config.h
|
|
||||||
$(CC) -D PREFIX=\"$(PREFIX)\" $(mailer_CFLAGS) -c account.c
|
|
||||||
|
|
||||||
callbacks.o: callbacks.c account.h callbacks.h compose.h mailer.h gtkassistant.c
|
|
||||||
$(CC) $(mailer_CFLAGS) -c callbacks.c
|
|
||||||
|
|
||||||
folder.o: folder.c mailer.h folder.h
|
|
||||||
$(CC) $(mailer_CFLAGS) -c folder.c
|
|
||||||
|
|
||||||
mailer.o: mailer.c account.h callbacks.h compose.h mailer.h ../config.h
|
|
||||||
$(CC) -D PREFIX=\"$(PREFIX)\" $(mailer_CFLAGS) -c mailer.c
|
|
||||||
|
|
||||||
main.o: main.c mailer.h ../config.h
|
main.o: main.c mailer.h ../config.h
|
||||||
$(CC) -D PREFIX=\"$(PREFIX)\" $(mailer_CFLAGS) -c main.c
|
$(CC) -D PREFIX=\"$(PREFIX)\" $(mailer_CFLAGS) -c main.c
|
||||||
|
|
||||||
message.o: message.c
|
|
||||||
$(CC) $(mailer_CFLAGS) -c message.c
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) clean) || exit; done
|
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) clean) || exit; done
|
||||||
$(RM) -- $(compose_OBJS) $(mailer_OBJS)
|
$(RM) -- $(libMailer_OBJS) $(compose_OBJS) $(mailer_OBJS)
|
||||||
|
|
||||||
distclean:
|
distclean:
|
||||||
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) distclean) || exit; done
|
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) distclean) || exit; done
|
||||||
$(RM) -- $(compose_OBJS) $(mailer_OBJS)
|
$(RM) -- $(libMailer_OBJS) $(compose_OBJS) $(mailer_OBJS)
|
||||||
$(RM) -- $(TARGETS)
|
$(RM) -- $(TARGETS)
|
||||||
|
|
||||||
install: $(TARGETS)
|
install: $(TARGETS)
|
||||||
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) install) || exit; done
|
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) install) || exit; done
|
||||||
|
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
||||||
|
$(INSTALL) -m 0644 -- libMailer.a $(DESTDIR)$(LIBDIR)/libMailer.a
|
||||||
|
$(INSTALL) -m 0755 -- libMailer.so.0.0 $(DESTDIR)$(LIBDIR)/libMailer.so.0.0
|
||||||
|
$(LN) -s -- libMailer.so.0.0 $(DESTDIR)$(LIBDIR)/libMailer.so.0
|
||||||
|
$(LN) -s -- libMailer.so.0.0 $(DESTDIR)$(LIBDIR)/libMailer.so
|
||||||
$(MKDIR) $(DESTDIR)$(BINDIR)
|
$(MKDIR) $(DESTDIR)$(BINDIR)
|
||||||
$(INSTALL) -m 0755 -- compose $(DESTDIR)$(BINDIR)/compose
|
$(INSTALL) -m 0755 -- compose $(DESTDIR)$(BINDIR)/compose
|
||||||
$(MKDIR) $(DESTDIR)$(BINDIR)
|
$(MKDIR) $(DESTDIR)$(BINDIR)
|
||||||
|
@ -77,6 +98,10 @@ install: $(TARGETS)
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) uninstall) || exit; done
|
@for i in $(SUBDIRS); do (cd $$i && $(MAKE) uninstall) || exit; done
|
||||||
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libMailer.a
|
||||||
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libMailer.so.0.0
|
||||||
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libMailer.so.0
|
||||||
|
$(RM) -- $(DESTDIR)$(LIBDIR)/libMailer.so
|
||||||
$(RM) -- $(DESTDIR)$(BINDIR)/compose
|
$(RM) -- $(DESTDIR)$(BINDIR)/compose
|
||||||
$(RM) -- $(DESTDIR)$(BINDIR)/mailer
|
$(RM) -- $(DESTDIR)$(BINDIR)/mailer
|
||||||
|
|
||||||
|
|
|
@ -1,23 +1,31 @@
|
||||||
subdirs=account,plugins
|
subdirs=account,plugins
|
||||||
targets=compose,mailer
|
targets=libMailer,compose,mailer
|
||||||
cppflags_force=-I ../include
|
cppflags_force=-I ../include
|
||||||
#cppflags=-D EMBEDDED
|
#cppflags=-D EMBEDDED
|
||||||
cflags_force=-W `pkg-config --cflags libSystem libDesktop`
|
cflags_force=-W `pkg-config --cflags libDesktop`
|
||||||
cflags=-Wall -g -O2 -pedantic
|
cflags=-Wall -g -O2 -pedantic
|
||||||
ldflags_force=`pkg-config --libs libSystem libDesktop`
|
|
||||||
ldflags=
|
ldflags=
|
||||||
dist=Makefile,account.h,callbacks.h,common.c,compose.h,folder.h,mailer.h,message.h,gtkassistant.c
|
dist=Makefile,account.h,callbacks.h,common.c,compose.h,folder.h,mailer.h,message.h,gtkassistant.c
|
||||||
|
|
||||||
|
[libMailer]
|
||||||
|
type=library
|
||||||
|
cflags=-fPIC
|
||||||
|
ldflags=`pkg-config --libs libDesktop`
|
||||||
|
sources=account.c,callbacks.c,compose.c,folder.c,mailer.c,message.c
|
||||||
|
install=$(LIBDIR)
|
||||||
|
|
||||||
[compose]
|
[compose]
|
||||||
type=binary
|
type=binary
|
||||||
sources=compose.c,compose-main.c
|
depends=libMailer.so
|
||||||
|
sources=compose-main.c
|
||||||
|
ldflags=`pkg-config --libs gtk+-2.0` -L . -Wl,-rpath,$(PREFIX)/lib -lMailer
|
||||||
install=$(BINDIR)
|
install=$(BINDIR)
|
||||||
|
|
||||||
[mailer]
|
[mailer]
|
||||||
type=binary
|
type=binary
|
||||||
sources=account.c,callbacks.c,folder.c,mailer.c,main.c,message.c
|
depends=libMailer.so
|
||||||
depends=compose.o
|
sources=main.c
|
||||||
ldflags=compose.o
|
ldflags=`pkg-config --libs gtk+-2.0` -L . -Wl,-rpath,$(PREFIX)/lib -lMailer
|
||||||
install=$(BINDIR)
|
install=$(BINDIR)
|
||||||
|
|
||||||
[account.c]
|
[account.c]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user