--- Makefile.orig 2026-02-25 10:55:03 UTC +++ Makefile @@ -23,17 +23,17 @@ OPT = -O2 -g W = -W -Wall -Wno-unused-parameter -Wbad-function-cast -Wuninitialized THREADS = -pthread OPT = -O2 -g -CFLAGS = $(THREADS) $(OPT) $(W) $(XCFLAGS) +CFLAGS += $(THREADS) $(W) LDLIBS = SOLIBS = -SOEXT = .so +SOEXT = .so.0 prefix ?= /usr/local exec_prefix = $(prefix) bindir = $(exec_prefix)/bin libdir = $(exec_prefix)/lib includedir = $(prefix)/include datarootdir = $(prefix)/share -mandir = $(datarootdir)/man +mandir = $(prefix)/share/man ######################################################################## @@ -41,7 +41,7 @@ ILIBS = $(LIBS) $(SHLIBS) LIBS = libdlmdb.a SHLIBS = libdlmdb$(SOEXT) ILIBS = $(LIBS) $(SHLIBS) -LINKLIBS = $(LIBS) +LINKLIBS = $(SHLIBS) IPROGS = dlmdb_stat dlmdb_copy dlmdb_dump dlmdb_load dlmdb_drop IDOCS = dlmdb_stat.1 dlmdb_copy.1 dlmdb_dump.1 dlmdb_load.1 dlmdb_drop.1 PROGS = $(IPROGS) mtest mtest2 mtest3 mtest4 mtest5 mtest_count mtest_prefix mtest_inmem count_bench compress_bench sample_bench dup_iter_bench inmem_bench @@ -53,10 +53,11 @@ install: $(ILIBS) $(IPROGS) $(IHDRS) mkdir -p $(DESTDIR)$(libdir) mkdir -p $(DESTDIR)$(includedir) mkdir -p $(DESTDIR)$(mandir)/man1 - for f in $(IPROGS); do cp $$f $(DESTDIR)$(bindir); done - for f in $(ILIBS); do cp $$f $(DESTDIR)$(libdir); done - for f in $(IHDRS); do cp $$f $(DESTDIR)$(includedir); done - for f in $(IDOCS); do cp $$f $(DESTDIR)$(mandir)/man1/dl$$f; done + for f in $(IPROGS); do $(INSTALL_PROGRAM) $$f $(DESTDIR)$(bindir); done + for f in $(LIBS); do $(INSTALL_DATA) $$f $(DESTDIR)$(libdir); done + for f in $(SHLIBS); do $(INSTALL_LIB) $$f $(DESTDIR)$(libdir); done + for f in $(IHDRS); do $(INSTALL_DATA) $$f $(DESTDIR)$(includedir); done + for f in $(IDOCS); do $(INSTALL_MAN) $$f $(DESTDIR)$(mandir)/man1/dl$$f; done clean: rm -rf $(PROGS) *.[ao] *.[ls]o *~ testdb @@ -79,28 +80,48 @@ libdlmdb$(SOEXT): mdb.lo midl.lo libdlmdb$(SOEXT): mdb.lo midl.lo # $(CC) $(LDFLAGS) -pthread -shared -Wl,-Bsymbolic -o $@ mdb.o midl.o $(SOLIBS) - $(CC) $(LDFLAGS) -pthread -shared -o $@ mdb.lo midl.lo $(SOLIBS) + $(CC) $(LDFLAGS) -pthread -shared -Wl,-soname,$@ -o $@ mdb.lo midl.lo $(SOLIBS) dlmdb_stat: mdb_stat.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) dlmdb_copy: mdb_copy.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) dlmdb_dump: mdb_dump.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) dlmdb_load: mdb_load.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) dlmdb_drop: mdb_drop.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest: mtest.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest2: mtest2.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest3: mtest3.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest4: mtest4.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest5: mtest5.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest_count: mtest_count.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest_prefix: mtest_prefix.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest_inmem: mtest_inmem.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) count_bench: count_bench.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) compress_bench: compress_bench.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) sample_bench: sample_bench.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) dup_iter_bench: dup_iter_bench.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) inmem_bench: inmem_bench.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mtest6: mtest6.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mplay: mplay.o $(LINKLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(.ALLSRC) mdb.o: mdb.c dlmdb.h midl.h $(CC) $(CFLAGS) $(CPPFLAGS) -c mdb.c