Building and installing the libDatabase shared library
Moved the modules to $(LIBDIR)/Database/engine
This commit is contained in:
parent
e933ec7618
commit
6e710609f7
28
src/Makefile
28
src/Makefile
|
@ -1,14 +1,16 @@
|
||||||
SUBDIRS = database
|
SUBDIRS = database
|
||||||
TARGETS = database.o
|
TARGETS = libDatabase.a libDatabase.so.0.0 libDatabase.so.0 libDatabase.so
|
||||||
PREFIX = /usr/local
|
PREFIX = /usr/local
|
||||||
DESTDIR =
|
DESTDIR =
|
||||||
BINDIR = $(PREFIX)/bin
|
LIBDIR = $(PREFIX)/lib
|
||||||
SBINDIR = $(PREFIX)/sbin
|
|
||||||
CC ?= cc
|
CC ?= cc
|
||||||
CPPFLAGSF?=
|
CPPFLAGSF?=
|
||||||
CPPFLAGS?=
|
CPPFLAGS?=
|
||||||
CFLAGSF = -W -fPIC
|
CFLAGSF = -W -fPIC
|
||||||
CFLAGS = -Wall -g -O2 -pedantic
|
CFLAGS = -Wall -g -O2 -pedantic
|
||||||
|
AR ?= ar
|
||||||
|
RANLIB ?= ranlib
|
||||||
|
CCSHARED?= $(CC) -shared
|
||||||
RM ?= rm -f
|
RM ?= rm -f
|
||||||
LN ?= ln -f
|
LN ?= ln -f
|
||||||
MKDIR ?= mkdir -p
|
MKDIR ?= mkdir -p
|
||||||
|
@ -20,19 +22,29 @@ 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
|
||||||
|
|
||||||
database.o_OBJS = database.o
|
libDatabase_OBJS = database.o
|
||||||
database.o_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
libDatabase_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
||||||
|
libDatabase_LDFLAGS = $(LDFLAGSF) $(LDFLAGS)
|
||||||
|
|
||||||
|
libDatabase.a: $(libDatabase_OBJS)
|
||||||
|
$(AR) -rc libDatabase.a $(libDatabase_OBJS)
|
||||||
|
$(RANLIB) libDatabase.a
|
||||||
|
|
||||||
|
libDatabase.so.0.0 libDatabase.so.0 libDatabase.so: $(libDatabase_OBJS)
|
||||||
|
$(CCSHARED) -o libDatabase.so.0.0 -Wl,-soname,libDatabase.so.0 $(libDatabase_OBJS) $(libDatabase_LDFLAGS)
|
||||||
|
$(LN) -s -- libDatabase.so.0.0 libDatabase.so.0
|
||||||
|
$(LN) -s -- libDatabase.so.0.0 libDatabase.so
|
||||||
|
|
||||||
database.o: database.c database/database.h
|
database.o: database.c database/database.h
|
||||||
$(CC) $(database.o_CFLAGS) -c database.c
|
$(CC) $(libDatabase_CFLAGS) -c database.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) -- $(database.o_OBJS)
|
$(RM) -- $(libDatabase_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) -- $(database.o_OBJS)
|
$(RM) -- $(libDatabase_OBJS)
|
||||||
$(RM) -- $(TARGETS)
|
$(RM) -- $(TARGETS)
|
||||||
|
|
||||||
install: $(TARGETS)
|
install: $(TARGETS)
|
||||||
|
|
|
@ -43,7 +43,7 @@ Database * database_new(char const * engine, Config * config,
|
||||||
if((database = object_new(sizeof(*database))) == NULL)
|
if((database = object_new(sizeof(*database))) == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
memset(database, 0, sizeof(*database));
|
memset(database, 0, sizeof(*database));
|
||||||
if((database->plugin = plugin_new(LIBDIR, PACKAGE, "database",
|
if((database->plugin = plugin_new(LIBDIR, "Database", "engine",
|
||||||
engine)) == NULL
|
engine)) == NULL
|
||||||
|| (database->dplugin = plugin_lookup(database->plugin,
|
|| (database->dplugin = plugin_lookup(database->plugin,
|
||||||
"database")) == NULL
|
"database")) == NULL
|
||||||
|
|
|
@ -65,16 +65,16 @@ distclean: clean
|
||||||
$(RM) -- $(TARGETS)
|
$(RM) -- $(TARGETS)
|
||||||
|
|
||||||
install: $(TARGETS)
|
install: $(TARGETS)
|
||||||
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/database
|
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/engine
|
||||||
$(INSTALL) -m 0644 -- pgsql.so $(DESTDIR)$(LIBDIR)/Database/database/pgsql.so
|
$(INSTALL) -m 0644 -- pgsql.so $(DESTDIR)$(LIBDIR)/Database/engine/pgsql.so
|
||||||
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/database
|
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/engine
|
||||||
$(INSTALL) -m 0644 -- sqlite2.so $(DESTDIR)$(LIBDIR)/Database/database/sqlite2.so
|
$(INSTALL) -m 0644 -- sqlite2.so $(DESTDIR)$(LIBDIR)/Database/engine/sqlite2.so
|
||||||
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/database
|
$(MKDIR) $(DESTDIR)$(LIBDIR)/Database/engine
|
||||||
$(INSTALL) -m 0644 -- sqlite3.so $(DESTDIR)$(LIBDIR)/Database/database/sqlite3.so
|
$(INSTALL) -m 0644 -- sqlite3.so $(DESTDIR)$(LIBDIR)/Database/engine/sqlite3.so
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/database/pgsql.so
|
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/engine/pgsql.so
|
||||||
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/database/sqlite2.so
|
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/engine/sqlite2.so
|
||||||
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/database/sqlite3.so
|
$(RM) -- $(DESTDIR)$(LIBDIR)/Database/engine/sqlite3.so
|
||||||
|
|
||||||
.PHONY: all clean distclean install uninstall
|
.PHONY: all clean distclean install uninstall
|
||||||
|
|
|
@ -8,7 +8,7 @@ type=plugin
|
||||||
cppflags=-I `pg_config --includedir`
|
cppflags=-I `pg_config --includedir`
|
||||||
ldflags=-L `pg_config --libdir` -Wl,-rpath,`pg_config --libdir` `pg_config --libs` -lpq
|
ldflags=-L `pg_config --libdir` -Wl,-rpath,`pg_config --libdir` `pg_config --libs` -lpq
|
||||||
sources=pgsql.c
|
sources=pgsql.c
|
||||||
install=$(LIBDIR)/Database/database
|
install=$(LIBDIR)/Database/engine
|
||||||
|
|
||||||
[pgsql.c]
|
[pgsql.c]
|
||||||
depends=database.h
|
depends=database.h
|
||||||
|
@ -18,7 +18,7 @@ type=plugin
|
||||||
cflags=`pkg-config --cflags sqlite`
|
cflags=`pkg-config --cflags sqlite`
|
||||||
ldflags=`pkg-config --libs sqlite`
|
ldflags=`pkg-config --libs sqlite`
|
||||||
sources=sqlite2.c
|
sources=sqlite2.c
|
||||||
install=$(LIBDIR)/Database/database
|
install=$(LIBDIR)/Database/engine
|
||||||
|
|
||||||
[sqlite2.c]
|
[sqlite2.c]
|
||||||
depends=database.h
|
depends=database.h
|
||||||
|
@ -28,7 +28,7 @@ type=plugin
|
||||||
cflags=`pkg-config --cflags sqlite3`
|
cflags=`pkg-config --cflags sqlite3`
|
||||||
ldflags=`pkg-config --libs sqlite3`
|
ldflags=`pkg-config --libs sqlite3`
|
||||||
sources=sqlite3.c
|
sources=sqlite3.c
|
||||||
install=$(LIBDIR)/Database/database
|
install=$(LIBDIR)/Database/engine
|
||||||
|
|
||||||
[sqlite3.c]
|
[sqlite3.c]
|
||||||
depends=database.h
|
depends=database.h
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
subdirs=database
|
subdirs=database
|
||||||
targets=database.o
|
targets=libDatabase
|
||||||
cflags_force=-W -fPIC
|
cflags_force=-W -fPIC
|
||||||
cflags=-Wall -g -O2 -pedantic
|
cflags=-Wall -g -O2 -pedantic
|
||||||
dist=Makefile
|
dist=Makefile
|
||||||
|
|
||||||
[database.o]
|
[libDatabase]
|
||||||
type=object
|
type=library
|
||||||
sources=database.c
|
sources=database.c
|
||||||
|
|
||||||
[database.c]
|
[database.c]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user